:root{--ink:#172b31;--green:#345e50;--muted:#65716e;--paper:#f7f7f3;--serif:'Noto Serif JP','Yu Mincho',serif;--line:#dde3dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:#f7f6f2;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:14px;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a87538;outline-offset:4px}img{display:block;max-width:100%;object-fit:cover}svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.symbols{width:0;height:0;position:absolute;overflow:hidden}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:600}h2{font-size:27px;line-height:1.65;letter-spacing:.055em}h3{font-size:19px;line-height:1.7}p{color:var(--muted)}.testbar{height:29px;display:flex;justify-content:space-between;align-items:center;max-width:1180px;margin:auto;padding:0 20px;font-size:10px;letter-spacing:.04em;color:#758178}.testbar a{border-bottom:1px solid #aeb9ae}.header,main,footer{max-width:1180px;margin:auto}.header{display:flex;align-items:center;gap:15px;padding:20px 32px;background:white;height:86px}.brand{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.brand img{width:185px;height:auto}.brand span{font:8px Georgia,serif;letter-spacing:.13em;margin-top:-3px}.header nav{margin-left:auto;display:flex;gap:22px;font-size:11px;font-weight:600}.header nav a{white-space:nowrap}.button{color:var(--green);display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid #adbdb4;background:#fff;border-radius:50px;min-height:52px;padding:12px 29px;font:600 14px var(--serif);letter-spacing:.03em;box-shadow:0 3px 6px #163e3512;transition:transform .2s,background .2s}.button:hover{background:#eff5ed;transform:translateY(-2px)}.button.solid{background:linear-gradient(125deg,#40695a,#2c5144);border-color:#3a6152;color:white}.button.solid:hover{background:#28483d}.button.small{font:600 10px sans-serif;padding:10px 21px;min-height:37px;gap:8px;white-space:nowrap}.menu{display:none}main{background:#fcfcfa}.hero{position:relative;min-height:530px;isolation:isolate;overflow:hidden;background:#f7f8f3}.hero-image{position:absolute;inset:0 0 0 29%;z-index:-3}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:60% 44%}.hero:after{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#f9faf5 2%,#f9faf5 29%,#f9faf5ec 37%,#f9faf580 48%,transparent 65%),linear-gradient(0deg,#f7f7f3 0%,transparent 18%)}.hero-inner{position:relative;padding:35px 55px 57px}.hero-kicker{font:600 13px/1.9 var(--serif);letter-spacing:.13em;margin-bottom:20px;color:#374b4c}.hero h1{font-size:42px;letter-spacing:-.025em;font-weight:600;line-height:1.48;color:#152c35}.title-line{display:block;white-space:nowrap}.title-line.accent{font-size:49px;color:#365f52;font-weight:500;letter-spacing:.035em}.hero-copy{font-size:13px;line-height:1.9;color:#394c50;margin-top:16px}.actions{display:flex;gap:16px;margin-top:20px}.photo-note{position:absolute;right:125px;bottom:91px;font:500 20px/1.9 var(--serif);letter-spacing:.17em;transform:rotate(-13deg);color:#273a3d;text-shadow:0 1px 8px white}.hero-signature{position:absolute;right:45px;bottom:23px;font:11px/1.35 Georgia,serif;letter-spacing:.15em;color:#4d6c61}.hero-landscape{position:absolute;width:290px;height:160px;right:-70px;bottom:-15px;border-radius:75% 0 0 0;background:#d4e4d9a6 url('/assets/home-20260914/topo-hero.svg') center/cover;z-index:-1;transform:rotate(-14deg)}.main-flow{padding:0 30px 18px;background:linear-gradient(#f7f7f3,#f2f3ef)}.section{padding:32px}.facts{padding:0 0 25px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.facts>div{background:#ffffffd9;border-radius:10px;padding:24px 20px;display:flex;align-items:center;justify-content:center;gap:24px;box-shadow:0 5px 14px #273d3210}.facts svg{color:var(--green);width:42px;height:42px}.facts p{font:600 16px/1.5 var(--serif);color:#355a50}.facts strong{display:block;font-size:39px;font-weight:500;line-height:1.3;letter-spacing:-.025em}.facts strong span{font-size:29px}.facts small{display:block;font:12px/1.7 sans-serif;color:#65716e;margin-top:8px}.facts strong.fact-title{font-size:21px;line-height:1.6;letter-spacing:0}.steps{padding:21px 30px 24px;background:#ffffffa6;border-radius:11px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}.section-heading p{font-size:13px;margin-top:3px}.section-heading.centered{display:block;text-align:center;margin-bottom:21px}.steps h2{font-size:29px}.steps h2 em{font-size:40px;color:var(--green);font-style:normal;line-height:1}.steps .section-heading p{font-size:13px}.steps ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:42px;padding:0;margin:0}.steps li{display:flex;align-items:center;gap:18px;position:relative}.steps li+li:before{content:'›';position:absolute;left:-29px;font:34px var(--serif);color:#3c6959}.step-num{width:87px;height:87px;flex-shrink:0;background:#deebe2;border-radius:50%;text-align:center;padding-top:9px;font:18px var(--serif);color:#234d43}.step-num svg{display:block;width:30px;height:30px;margin:8px auto}.steps h3{font-size:19px}.steps li p{font-size:12px;margin-top:8px;line-height:1.7}.text-link{font-size:12px;font-weight:600;display:inline-flex;gap:15px;white-space:nowrap}.text-link:hover{color:#548772}.services{padding-top:27px;padding-bottom:10px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service{display:block;position:relative;padding:24px 23px 28px;border-radius:7px;min-height:203px;transition:transform .2s}.service:hover{transform:translateY(-4px)}.service svg{color:#2e5e51;width:40px;height:40px;margin-bottom:10px}.service h3{font-size:17px;letter-spacing:-.055em;white-space:nowrap}.service p{font-size:12px;line-height:1.9;margin-top:17px;color:#455853}.service-arrow{position:absolute;right:19px;bottom:16px;font-size:19px;color:#3f6b5a}.mint{background:linear-gradient(130deg,#eaf0e8,#f2f4ed)}.blue{background:linear-gradient(130deg,#e7eff3,#eff4f5)}.blue svg,.blue .service-arrow{color:#2b607f}.green{background:linear-gradient(130deg,#e3eee6,#eaf3ed)}.peach{background:linear-gradient(130deg,#f6eee6,#fbf2eb)}.peach svg,.peach .service-arrow{color:#b66e3d}.resources{padding-top:25px;padding-bottom:29px}.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.resource{background:#fff;border:1px solid #e9eae4;border-radius:7px;display:flex;overflow:hidden;position:relative;min-height:122px;box-shadow:0 3px 10px #26443309}.resource>img{width:32%;object-fit:cover}.resource>div{padding:12px 9px 16px}.resource h3{font:600 13px/1.7 var(--serif)}.resource p{font-size:10px;margin-top:9px;line-height:1.8}.resource>span{position:absolute;right:10px;bottom:4px;color:#376653}.resource:hover{background:#f5f9f3}.values{background:#f0f0e9 url('/assets/home-20260914/topo-hero.svg') left bottom/cover}.values>.section{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:35px 55px 28px}.value-label{font:600 13px var(--serif);margin-bottom:15px;color:#243c3f}.values h2{font-size:25px;letter-spacing:-.035em;line-height:1.65}.values p:not(.value-label){font-size:11px;margin-top:14px;line-height:1.8}.value-signature{display:block;font:11px Georgia,serif;letter-spacing:.13em;margin-top:17px}.principles{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;padding-top:4px}.principles>div{padding:0 9px}.principles>div+div{border-left:1px solid #cdd7ce}.principles svg{width:32px;height:32px;color:#355e50}.principles h3{font-size:13px;line-height:1.75;margin-top:10px}.consult{background:linear-gradient(110deg,#3c6353,#2c4d40);color:#fff;padding:28px 55px;display:flex;align-items:center;justify-content:space-between;gap:20px}.consult h2{font-size:21px;letter-spacing:.035em}.consult p{color:#f0f4ee;font-size:12px;margin-top:7px}.consult .actions{margin:0}.consult .button{min-height:48px;padding:12px 31px;font-size:13px}.consult .outline{background:transparent;color:white;border-color:#cedbd2;font:600 11px sans-serif}.consult .outline:hover{background:#ffffff15}footer{padding:17px 25px;display:flex;justify-content:space-between;align-items:center;background:#f7f6f2;gap:15px}footer>.brand{display:none}footer p,footer>a:last-child{font-size:10px;color:#7c867d}.eyebrow{font:10px sans-serif;letter-spacing:.15em}dialog{border:1px solid var(--line);border-radius:12px;padding:42px;max-width:540px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;color:var(--ink);box-shadow:0 30px 100px #143c3540}dialog::backdrop{background:#102b2466;backdrop-filter:blur(4px)}dialog h2{margin:15px 0 20px}dialog p{font-size:14px}dialog ol{font-size:14px;line-height:2.4;margin:25px 0;padding-left:22px}.dialog-note{background:#f3f4ef;padding:12px;margin-bottom:22px;font-size:12px!important}.close{position:absolute;right:14px;top:10px;background:transparent;border:0;font-size:29px;width:40px;height:40px}
@media(max-width:1100px) and (min-width:701px){.header{padding:16px 25px}.header nav{gap:13px;font-size:10px}.header-contact{display:none!important}.hero-inner{padding-left:38px}.hero h1{font-size:37px}.title-line.accent{font-size:44px}.hero-copy{font-size:12px}.facts>div{padding:22px 13px;gap:12px}.facts p{font-size:14px}.facts strong{font-size:33px}.facts strong span{font-size:25px}.facts strong.fact-title{font-size:17px}.facts small{font-size:10px}.steps{padding-inline:20px}.steps ol{gap:25px}.steps li{gap:12px}.step-num{width:67px;height:77px}.steps li+li:before{left:-18px}.steps li p{font-size:10px}.steps h3{font-size:16px}.service{padding:20px 15px}.service h3{font-size:14px}.service p{font-size:11px}.resource h3{font-size:11px}.resource p{font-size:9px}.values>.section{padding-inline:35px}.consult{padding-inline:35px}.consult h2{font-size:18px}}
@media(max-width:700px){html{scroll-padding-top:20px}.testbar{height:28px;padding-inline:18px;font-size:10px}.header{height:77px;padding:12px 19px;gap:10px;position:relative;z-index:10}.brand img{width:158px}.brand span{font-size:8px}.header-contact{display:none!important}.header-cta{margin-left:auto;font-size:10px!important;padding:9px 12px!important;min-height:36px!important}.header-cta span{display:none}.menu{display:block;width:36px;height:36px;background:transparent;border:0;font-size:22px}.header nav{display:none;position:absolute;left:0;right:0;top:77px;background:white;padding:16px 24px;box-shadow:0 10px 15px #193c3520;font-size:14px}.header nav.open{display:flex;flex-direction:column;gap:0}.header nav a{padding:12px 0}.hero{min-height:700px}.hero-image{inset:300px 0 0 0}.hero-image img{object-position:65% 48%}.hero:after{background:linear-gradient(180deg,#f9faf5 0%,#f9faf5 35%,#f9faf5ed 43%,#f9faf520 56%,transparent 73%),linear-gradient(0deg,#f7f7f3 0%,transparent 15%)}.hero-inner{padding:23px 22px 365px}.hero-kicker{font-size:11px;letter-spacing:.06em;line-height:1.9;margin-bottom:14px}.hero h1{font-size:clamp(23px,6.8vw,38px);letter-spacing:-.05em;line-height:1.65}.title-line.accent{font-size:34px;line-height:1.5;letter-spacing:.015em}.hero-copy{font-size:12px;line-height:1.9;margin-top:13px;max-width:340px}.hero-copy br{display:none}.actions{gap:10px;margin-top:18px}.button{padding:11px 18px;min-height:46px;font-size:12px;gap:15px}.photo-note{right:20px;bottom:65px;font-size:16px;line-height:1.9;letter-spacing:.08em;transform:rotate(-10deg);text-shadow:0 1px 5px #fff}.hero-landscape{bottom:-15px;width:230px;height:120px}.hero-signature{font-size:9px;right:20px;bottom:23px}.main-flow{padding:0 16px 17px}.facts{gap:9px;grid-template-columns:1fr;padding:0 0 15px}.facts>div{padding:15px 20px;justify-content:start;gap:22px;border-radius:7px}.facts svg{width:35px;height:35px}.facts p{font-size:14px}.facts strong{display:inline;font-size:29px;margin-left:15px}.facts strong span{font-size:23px}.facts small{font-size:12px;margin-top:3px}.facts strong.fact-title{font-size:17px;margin-left:0;display:block}.facts strong.fact-title+small br{display:none}.steps{padding:22px 20px}.steps h2{font-size:22px;letter-spacing:0}.steps h2 em{font-size:31px}.steps .section-heading p{font-size:12px;line-height:1.9;margin-top:8px}.steps ol{grid-template-columns:1fr;gap:26px}.steps li{gap:20px}.steps li+li:before{content:'↓';left:32px;top:-26px;font:18px sans-serif}.step-num{width:77px;height:77px;font-size:17px;padding-top:8px}.step-num svg{width:27px;height:27px;margin-top:8px}.steps h3{font-size:18px}.steps li p{font-size:12px;line-height:1.8;margin-top:5px}.section{padding:26px 18px}.section-heading{display:block;margin-bottom:17px}.section-heading h2{font-size:23px;letter-spacing:0}.section-heading p{font-size:12px;line-height:1.9}.section-heading>.text-link{margin-top:9px;font-size:11px}.service-grid{grid-template-columns:repeat(2,1fr);gap:11px}.service{padding:21px 16px 28px;min-height:201px}.service svg{width:33px;height:33px}.service h3{font-size:15px;line-height:1.8;white-space:normal;letter-spacing:-.06em}.service p{font-size:12px;margin-top:12px;line-height:1.8}.service p br{display:none}.service-arrow{right:13px;bottom:10px}.resources{padding-top:14px}.resource-grid{grid-template-columns:1fr;gap:11px}.resource{min-height:112px}.resource>img{width:30%;max-width:112px;max-height:132px}.resource>div{padding:14px}.resource h3{font-size:15px;line-height:1.7}.resource p{font-size:12px;line-height:1.7;margin-top:7px}.resource p br{display:none}.resource>span{right:15px;bottom:10px}.values>.section{grid-template-columns:1fr;gap:28px;padding:30px 23px}.value-label{font-size:13px;margin-bottom:12px}.values h2{font-size:22px;letter-spacing:-.055em;line-height:1.8}.values p:not(.value-label){font-size:12px}.value-signature{font-size:10px}.principles{padding-top:7px}.principles>div{padding:0 5px}.principles h3{font-size:12px;line-height:1.8}.principles svg{width:29px;height:29px}.consult{display:block;padding:26px 23px}.consult h2{font-size:19px;letter-spacing:0}.consult p{font-size:12px;line-height:1.8}.consult .actions{margin-top:19px;gap:10px}.consult .button{padding:12px 18px;min-height:45px;font-size:12px;gap:15px}.consult .outline{font-size:11px}footer{padding:13px 18px}footer p,footer>a:last-child{font-size:9px}dialog{padding:35px 24px}dialog h2{font-size:25px}dialog .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* A layout, with the existing production copy retained. */
.audience-links{display:flex;gap:22px;margin-bottom:23px;font-size:12px}.audience-links a{border-bottom:1px solid #abbeb2;padding-bottom:3px}.hero{min-height:600px}.hero-inner{padding-top:30px;padding-bottom:55px}.hero-copy{max-width:490px;font-size:14px;line-height:1.95}.hero-kicker{font-size:11px;letter-spacing:.12em;margin-bottom:17px}.hero-image img{object-position:72% 45%}.hero .actions .button{font-size:12px;padding-inline:22px;gap:16px}.eyebrow{font:11px/1.8 sans-serif;letter-spacing:.14em;color:var(--green);margin-bottom:8px}.section-lede{max-width:820px;margin:-6px 0 24px;font-size:14px;line-height:1.95}.section{padding:38px 32px}.recruitment-note{font-size:12px;padding:0 8px 24px;line-height:1.85}.steps .section-heading p{max-width:740px;margin:8px auto 0;font-size:13px}.steps h3{font-size:18px}.support-scope{padding:26px 18px 12px}.support-scope h3{font-size:17px;margin-bottom:8px}.support-scope p{font-size:13px;line-height:1.95}.service{min-height:320px;padding-bottom:45px}.service h3{font-size:18px;white-space:normal;letter-spacing:0;line-height:1.7}.service p{font-size:13px;line-height:1.9}.service .service-claim{color:var(--green);font-weight:600;margin:12px 0 8px}.service-arrow{font-size:11px}.card-label{display:block;font:11px/1.8 sans-serif;letter-spacing:.025em;color:#60766c;margin:15px 0 8px}.pathways,.more-columns{margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;position:relative;padding:20px 38px 20px 0;font-weight:600;line-height:1.8}summary::-webkit-details-marker{display:none}summary:after{content:'＋';position:absolute;right:4px;top:20px;font-weight:400;color:var(--green)}details[open]>summary:after{content:'−'}summary:focus-visible{outline:3px solid #a87538;outline-offset:3px}.pathways>p{font-size:13px;margin:0 0 20px}.pathway-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:22px}.pathway-grid>a,.column-grid>a{position:relative;padding:21px 24px 32px;border:1px solid var(--line);border-radius:8px;background:#fcfcf8}.pathway-grid h3{font-size:17px}.pathway-grid p,.column-grid p{font-size:13px;line-height:1.85;margin-top:9px}.pathway-grid small{display:block;margin-top:12px;color:var(--green)}.pathway-grid .card-label{margin-top:0}.row-arrow{position:absolute;right:18px;bottom:10px}.proof{background:#f0f4ee}.proof ul{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:0;gap:24px}.proof li{border-left:1px solid #c4d4c8;padding-left:25px}.proof strong{display:block;font:500 34px/1.5 var(--serif);color:var(--green);white-space:nowrap}.proof li p{font-size:12px;max-width:240px;margin-top:7px}.resource-grid{grid-template-columns:repeat(2,1fr);gap:16px}.resource{min-height:205px;align-items:stretch}.resource>img{width:29%;max-height:240px;object-fit:cover}.resource>div{padding:20px 26px 25px 18px}.resource h3{font-size:17px;line-height:1.65}.resource p{font-size:13px;line-height:1.85;margin-top:10px}.resource small{display:block;font-size:11px;color:var(--green);margin-top:10px}.resource .card-label{margin-top:0}.section-links{display:flex;flex-wrap:wrap;gap:14px 27px;margin-top:24px}.section-links a{font-size:12px;line-height:1.85;border-bottom:1px solid #b5c5b8;padding-bottom:3px}.map-feature{display:grid;grid-template-columns:2fr 1fr;gap:30px;background:#edf3ef}.map-feature p{font-size:14px;line-height:1.95}.map-art{background:#e1eade url('/assets/home-20260914/topo-map.svg') center/cover;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:260px;color:var(--green)}.map-art svg{width:65px;height:65px}.map-art span{font:18px var(--serif)}.column-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.column-grid h3{font-size:16px;line-height:1.8}.column-grid p{font-size:12px}.more-columns .column-grid{margin-bottom:24px}.faq{background:#f0f5f0}.faq-list{max-width:880px;margin:auto}.faq details{border-top:1px solid #cfdbd0}.faq details:last-child{border-bottom:1px solid #cfdbd0}.faq summary{font-size:16px;font-family:var(--serif)}.faq details>p{font-size:14px;line-height:1.95;padding:0 35px 22px 0}.values>.section{display:block;padding:40px 38px}.values>.section>div:first-child{max-width:860px}.values h2{font-size:27px}.values p:not(.value-label){font-size:13px;line-height:1.95}.origin-note{max-width:780px;margin-top:14px}.origin-note summary{padding-block:12px;font-size:13px}.origin-note summary:after{top:12px}.principles-wrap{margin-top:28px}.principles{margin:20px 0}.principles>div{text-align:left;padding:5px 26px}.principles h3{font-size:17px}.principles p{margin:12px 0 0}.principles svg{margin:0 0 12px}.consult{flex-wrap:wrap;gap:24px}.consult>div:first-child{max-width:580px}.consult p{line-height:1.9}.consult .button{font-size:12px;padding-inline:22px}.brand img{object-fit:contain}footer .brand{display:none}
@media(max-width:1000px) and (min-width:701px){.hero-copy{max-width:440px}.service-grid{grid-template-columns:repeat(2,1fr)}.column-grid{grid-template-columns:repeat(2,1fr)}.hero .actions{gap:9px}.hero .actions .button{padding-inline:17px}.proof strong{font-size:28px}}
@media(max-width:700px){.hero{min-height:0}.hero-inner{padding:23px 22px 305px}.audience-links{gap:18px;font-size:11px;margin-bottom:19px}.hero-kicker{font-size:9px;margin-bottom:13px}.hero-copy{font-size:13px;line-height:1.9;margin-top:15px}.hero .actions{gap:8px;flex-wrap:wrap}.hero .actions .button{padding:11px 15px;font-size:11px;gap:10px}.hero-image{inset:auto 0 0;height:320px}.hero-image img{object-position:77% 48%}.hero:after{background:linear-gradient(180deg,#f9faf5 0%,#f9faf5 59%,#f9faf5d0 63%,transparent 73%),linear-gradient(0deg,#f7f7f3,transparent 15%)}.hero-landscape{height:95px;width:170px}.hero-signature{bottom:16px;right:15px}.section{padding:30px 20px}.section-heading h2{font-size:22px;line-height:1.7}.section-lede{font-size:13px;line-height:1.95;margin-bottom:20px}.recruitment-note{font-size:11px;padding:1px 7px 20px}.steps{padding:24px 20px}.steps h2{font-size:22px}.steps .section-heading p{font-size:12px;text-align:left;line-height:1.95;margin-top:12px}.steps h3{font-size:16px}.steps li{gap:14px}.steps li p{font-size:12px}.step-num{width:68px;height:68px}.step-num svg{width:24px;height:24px;margin-top:5px}.support-scope{padding:24px 7px 8px}.support-scope h3{font-size:16px}.support-scope p{font-size:12px}.service-grid{grid-template-columns:1fr;gap:13px}.service{min-height:0;padding:23px 24px 43px}.service h3{font-size:18px;line-height:1.8}.service svg{width:33px;height:33px;float:right;margin-left:20px}.service .card-label{margin-top:0}.service p{font-size:13px;line-height:1.9;margin-top:9px}.service-arrow{bottom:15px;right:20px}.pathway-grid{grid-template-columns:1fr}.pathways>summary{font-size:14px}.proof ul{grid-template-columns:1fr;gap:18px}.proof strong{font-size:30px}.proof li{padding-left:18px;display:grid;grid-template-columns:1fr;gap:0}.proof li p{max-width:none;font-size:12px;margin-top:3px}.resource-grid{grid-template-columns:1fr}.resource{min-height:195px}.resource>img{width:27%;max-height:none}.resource>div{padding:16px 21px 22px 15px}.resource h3{font-size:16px}.resource p{font-size:12px}.resource small{font-size:10px}.section-links{gap:15px;margin-top:20px}.section-links a{font-size:12px}.map-feature{grid-template-columns:1fr;gap:24px}.map-feature p{font-size:13px}.map-art{min-height:160px}.map-art svg{width:45px;height:45px}.map-art span{font-size:15px}.column-grid{grid-template-columns:1fr;gap:12px}.column-grid>a{padding:18px 20px 30px}.column-grid h3{font-size:16px}.faq summary{font-size:15px;line-height:1.8}.faq details>p{font-size:13px;padding-right:10px}.values>.section{padding:30px 22px}.values h2{font-size:24px}.values p:not(.value-label){font-size:13px}.principles{grid-template-columns:1fr;gap:23px}.principles>div{padding:5px 0 5px 19px;border-left:1px solid #c8d4c9}.principles h3{font-size:17px}.principles p{font-size:12px!important}.principles svg{width:29px;height:29px}.consult{padding:27px 23px}.consult h2{font-size:23px}.consult .actions{flex-wrap:wrap;gap:12px}.consult .button{padding-inline:18px;font-size:12px}.menu{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Keep resource thumbnails tied to their text card height. */
.resource{position:relative;display:block;padding-left:28%;min-height:205px}.resource>img{position:absolute;inset:0 auto 0 0;width:28%;height:100%;max-width:none;max-height:none;object-fit:cover}.resource>div{width:100%}
@media(max-width:700px){.resource{min-height:195px;padding-left:27%}.resource>img{width:27%}}
/* Brand introduction precedes offers; two equal main services. */
.hero{min-height:565px}
.hero-inner{padding:55px 55px 72px}
.hero-kicker{font:600 13px/1.8 var(--serif);letter-spacing:.12em;margin-bottom:22px}
.hero h1{font-size:52px;line-height:1.5;letter-spacing:.015em}
.hero h1 .accent{font-size:56px}
.hero-belief{font:500 18px/1.9 var(--serif);color:#28483d;margin-top:23px}
.hero-copy{max-width:455px;font-size:13px;line-height:2;margin-top:12px}
.hero .actions{margin-top:25px}
.photo-note{position:absolute;right:120px;bottom:93px;margin:0;transform:rotate(-11deg);font:500 21px/1.9 var(--serif);letter-spacing:.13em;color:#27473d;text-shadow:0 1px 5px #fff,0 0 14px #ffffffdd;pointer-events:none}
.hero-signature{font:500 10px/1.8 var(--serif);letter-spacing:.09em;right:32px;bottom:23px}
.brand > span{font:9px/1.5 var(--serif);letter-spacing:.06em}
.values{background:#f3f3ec url('/assets/home-20260914/topo-hero.svg') center/cover}
.values>.section{padding:50px 55px 40px}
.values>.section>div:first-child{max-width:920px}
.values h2{font-size:28px;line-height:1.7;margin-top:12px}
.values p:not(.value-label){line-height:2}
.values .origin-note{max-width:760px}
.principles-wrap{margin-top:30px}
.principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;margin:18px 0}
.principle{border-left:1px solid #bdcdbd;padding:0 21px}
.principle>summary{padding:0 22px 0 0;min-height:96px}
.principle>summary:after{top:49px;right:-4px;font-size:17px}
.principle svg{width:28px;height:28px;margin:0 0 12px;color:var(--green)}
.principle h3{font:600 16px/1.8 var(--serif);margin:0;letter-spacing:0}
.values .principle>p{font-size:12px;margin-top:14px}
.values .text-link{font-size:12px;border-bottom:1px solid #b7c7b7;padding-bottom:4px}
.brand-services{padding:48px 42px 35px}
.brand-services .section-heading h2{font-size:29px}
.brand-services>.section-lede{max-width:780px;font-size:13px}
.primary-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.primary-service{position:relative;display:flex;flex-direction:column;padding:30px;border-radius:10px;border:1px solid #d6e1d7;background:#eef4ed;color:#233e34}
.primary-service.web-service{background:#edf3f3;border-color:#d5e1e0}
.primary-service>svg{position:absolute;right:29px;top:28px;width:39px;height:39px;color:#385e51}
.primary-service .card-label{font:12px/1.8 var(--serif);margin:0 0 7px;letter-spacing:.09em}
.primary-service h3{font:600 17px/1.7 var(--serif);padding-right:45px;margin:0}
.primary-service .service-claim{font:500 24px/1.7 var(--serif);margin:22px 0 13px;letter-spacing:-.03em}
.primary-service>p:not(.service-claim){font-size:13px;line-height:2;margin:0 0 25px;color:#475a53}
.primary-service-footer{margin-top:auto;border-top:1px solid #cbd9cf;padding-top:21px}
.service-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;color:#34594a}
.service-price>span{font-size:12px}
.service-price strong{font:500 31px/1.4 var(--serif);letter-spacing:-.035em;white-space:nowrap}
.service-price strong span{font-size:24px}
.service-price small{font-size:10px}
.primary-service .price-note{font-size:11px;line-height:1.8;margin:8px 0 20px;min-height:40px;color:#54665d}
.primary-service .button{width:100%;font-size:13px;padding:14px 22px;justify-content:space-between}
.service-information{margin-top:25px;border-top:1px solid #cdd8cb}
.offer-details{border-bottom:1px solid #cdd8cb}
.offer-details>summary{font-size:14px}
.offer-details .main-flow{padding:5px 0 24px}
.ai-original-lead,.web-service-detail>p{font-size:13px;line-height:2;margin:0 0 22px}
.offer-details .facts{margin-top:24px;padding-bottom:12px}
.offer-details .facts>div{padding:18px 10px;gap:15px}
.offer-details .facts p{font-size:13px}
.offer-details .facts strong{font-size:29px}
.offer-details .facts strong span{font-size:22px}
.offer-details .facts strong.fact-title{font-size:17px}
.offer-details .tax-note{font-size:11px;text-align:right;margin:0 0 20px}
.offer-details .steps{background:#fbfcf8;padding:25px}
.web-service-detail{padding:6px 0 27px;max-width:800px}
.web-service-detail h3{font-size:21px;line-height:1.7;margin-bottom:15px}
.web-service-detail ul{font-size:13px;line-height:2;padding-left:1.5em;margin-bottom:22px}
.web-service-detail .text-link{font-size:13px}
.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.related-grid .service{min-height:260px}
.related-services .section-heading{align-items:end}
.related-services .section-heading>.text-link{font-size:12px;white-space:nowrap}
@media(max-width:1000px) and (min-width:701px){
 .hero-inner{padding:44px 35px 68px}.hero h1{font-size:43px}.hero h1 .accent{font-size:47px}.hero-copy{max-width:410px}.hero-belief{font-size:16px}.photo-note{right:60px;bottom:73px;font-size:18px}.values>.section{padding-inline:35px}.brand-services{padding-inline:30px}.primary-service{padding:25px}.primary-service .service-claim{font-size:21px}.primary-service h3{font-size:15px}.primary-service>svg{right:23px;width:32px}.principle{padding-inline:15px}.principle h3{font-size:15px}
}
@media(max-width:700px){
 .header .brand{min-width:0}.brand>span{font-size:8px}.header-cta{font-size:10px!important;padding-inline:13px!important}
 .hero{min-height:0}.hero-inner{padding:30px 23px 319px}.hero-kicker{font-size:11px;margin-bottom:17px}.hero h1{font-size:clamp(32px,8.8vw,49px);line-height:1.6;letter-spacing:0}.hero h1 .accent{font-size:clamp(35px,9.5vw,53px)}
 .hero-belief{font-size:14px;margin-top:18px;line-height:1.8}.hero-copy{font-size:12px;line-height:2;margin-top:12px;max-width:480px}.hero .actions{margin-top:22px;gap:9px}.hero .actions .button{font-size:11px;padding:12px 14px;gap:13px}
 .hero-image{height:320px;inset:auto 0 0}.hero:after{background:linear-gradient(180deg,#f9faf5 0%,#f9faf5 55%,#f9faf5ba 62%,transparent 73%),linear-gradient(0deg,#f7f7f3,transparent 17%)}
 .photo-note{right:40px;bottom:63px;font-size:17px;line-height:1.85;letter-spacing:.1em;transform:rotate(-10deg)}.hero-signature{right:17px;bottom:16px;font-size:9px}
 .values>.section{padding:32px 23px 30px}.values h2{font-size:23px;max-width:330px}.values p:not(.value-label){font-size:12px;line-height:2}.origin-note>summary{font-size:12px}.principles-wrap{margin-top:23px}.principles{grid-template-columns:1fr;gap:0;margin:12px 0 20px}.principle{border-left:0;border-top:1px solid #ccd6c7;padding:0}.principle:last-child{border-bottom:1px solid #ccd6c7}.principle>summary{min-height:0;display:flex;align-items:center;gap:15px;padding:17px 27px 17px 0}.principle>summary:after{top:18px;right:1px}.principle svg{flex:0 0 24px;width:24px;height:24px;margin:0}.principle h3{font-size:14px;line-height:1.75;letter-spacing:0}.values .principle>p{font-size:12px!important;margin:0 0 20px 39px}
 .brand-services{padding:34px 20px}.brand-services .section-heading h2{font-size:23px}.brand-services>.section-lede{font-size:12px}.primary-services{grid-template-columns:1fr;gap:18px}.primary-service{padding:25px 23px}.primary-service>svg{width:33px;height:33px;right:23px;top:25px}.primary-service h3{font-size:16px;padding-right:38px}.primary-service .card-label{font-size:11px}.primary-service .service-claim{font-size:22px;margin:20px 0 13px}.primary-service>p:not(.service-claim){font-size:12px;line-height:2;margin-bottom:22px}.service-price strong{font-size:30px}.service-price strong span{font-size:22px}.service-price{gap:9px}.primary-service .price-note{font-size:10px;min-height:0}.primary-service .button{font-size:12px}.offer-details>summary{font-size:12px}.ai-original-lead,.web-service-detail>p{font-size:12px}.offer-details .facts strong{font-size:26px}.offer-details .facts{grid-template-columns:1fr}.web-service-detail h3{font-size:18px}.web-service-detail .text-link{font-size:11px}.related-grid{grid-template-columns:1fr}.related-grid .service{min-height:0}.related-services .section-heading{align-items:start;flex-direction:column;gap:15px}.consult .button{font-size:12px}
}

@media(max-width:700px){.values h2>span,.brand-services .section-heading h2>span{display:block}.hero-copy,.values p:not(.value-label),.primary-service>p:not(.service-claim){font-size:13px}.hero-image{height:320px}}
/* Keep the brand's contour lines quiet behind readable text. */
.values{background:linear-gradient(110deg,#f3f3ecf5,#f3f3ecd6),url('/assets/home-20260914/topo-hero.svg') center/cover}

/* Mobile first screen: brand heading, then the photograph, then the explanation. */
.hero-inner{position:static}
.mobile-photo-note,.mobile-contact-text{display:none}
@media(max-width:700px){
 .header{padding:14px 20px;gap:12px;min-height:72px}.header .brand{width:145px}.header .brand img{width:145px;height:auto}.header .brand>span{font-size:8px}.header-cta{min-height:44px;padding:11px 15px!important;font-size:11px!important;gap:8px!important}.header-cta .desktop-contact-text{display:none}.header-cta .mobile-contact-text{display:inline}.menu{flex:0 0 44px}
 .hero-inner{padding:25px 23px 27px}.hero-kicker{font-size:11px;margin-bottom:12px}.hero h1{font-size:clamp(31px,8.6vw,45px);line-height:1.55}.hero h1 .accent{font-size:clamp(34px,9.2vw,48px)}
 .hero-image{position:relative;inset:auto;width:calc(100% + 46px);height:auto;aspect-ratio:1.65;margin:17px -23px 0;z-index:0;overflow:hidden}.hero-image img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:75% 47%}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#f9faf5 0%,transparent 15%,transparent 82%,#f9faf5 100%);pointer-events:none}
 .hero:after,.hero>.photo-note,.hero>.hero-signature,.hero>.hero-landscape{display:none}
 .mobile-photo-note{display:block;position:absolute;left:24px;bottom:22px;margin:0;z-index:1;font:500 15px/1.9 var(--serif);letter-spacing:.1em;color:#284d40;transform:rotate(-9deg);text-shadow:0 0 8px #fff,0 0 16px #fff;pointer-events:none}
 .hero-belief{font-size:14px;line-height:1.9;margin-top:14px}.hero-copy{font-size:13px;line-height:1.9;margin-top:9px}.hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.hero .actions .button{min-height:46px;padding:11px 12px;font-size:11px;justify-content:space-between;gap:5px}
}
@media(max-width:360px){.header{padding-inline:16px;gap:8px}.header .brand,.header .brand img{width:132px}.header-cta{padding-inline:11px!important}.hero-inner{padding-inline:20px}.hero-image{width:calc(100% + 40px);margin-inline:-20px}.hero .actions .button{font-size:10px}}

/* A pen-written note, distinct from the Mincho headline. */
.photo-note,.mobile-photo-note{font-family:'YORIAI Hand',cursive;font-weight:400;font-style:normal;letter-spacing:.035em;line-height:1.85;font-synthesis:none}
.photo-note{font-size:25px;transform:rotate(-7deg)}
.hero-belief{max-width:540px}
@media(max-width:1000px) and (min-width:701px){.photo-note{font-size:22px}}
@media(max-width:700px){.mobile-photo-note{font-size:18px;line-height:1.8;left:22px;bottom:20px;letter-spacing:0;transform:rotate(-6deg)}.hero-belief{font-size:14px;line-height:1.8}.hero .actions .button{font-size:11px}.values h2{max-width:none;font-size:21px}.brand-services .section-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none!important}}

@media(max-width:700px){.hero-copy,.values p:not(.value-label),.primary-service>p:not(.service-claim),.brand-services>.section-lede,.ai-original-lead,.web-service-detail>p,.faq-list p{font-size:14px;line-height:1.95}.values .principle>p{font-size:14px!important}.section>p,.map-feature>div>p{font-size:14px}.primary-service .button{font-size:13px}}

/* Keep each principle in two complete phrases, with space for its disclosure. */
.principle-line{display:block;white-space:nowrap}
.principle>summary{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:13px 8px;padding:0;min-height:101px;align-content:start}
.principle>summary svg{grid-column:1 / -1;justify-self:center;margin:0}
.principle>summary h3{grid-column:1;min-width:0;text-align:center}
.principle>summary:after{position:static;grid-column:2;grid-row:2;align-self:center;justify-self:end;line-height:1}
.principle h3{font-size:clamp(14px,1.45vw,17px);line-height:1.8}
@media(max-width:1000px) and (min-width:701px){.principles{gap:16px}.principle{padding:0 11px}}
@media(max-width:700px){
 .principle>summary{grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:15px;padding:17px 0;min-height:84px}
 .principle>summary svg{grid-column:1;grid-row:1}
 .principle>summary h3{grid-column:2;grid-row:1;text-align:left;font-size:14px}
 .principle>summary:after{grid-column:3;grid-row:1}
}

/* Proposal B's quiet wordmark, within the photograph of proposal A. */
.hero-brand{position:absolute;right:34px;bottom:20px;z-index:3;display:flex;flex-direction:column;align-items:center;color:#244c40;text-shadow:0 1px 10px #ffffffba;pointer-events:none}
.hero-wordmark{font:400 30px/1.2 Georgia,'Times New Roman',serif;letter-spacing:.16em;padding-left:.16em}
.hero-brand-line{font:500 8px/1.8 var(--serif);letter-spacing:.06em;margin-top:5px}
.hero-image>.hero-brand{display:none}
.photo-note{bottom:104px}
@media(max-width:1000px) and (min-width:701px){.hero-brand{right:31px;bottom:19px}.hero-wordmark{font-size:27px}.photo-note{bottom:95px}}
@media(max-width:700px){
 .hero>.hero-brand{display:none}
 .hero-image>.hero-brand{display:flex;right:18px;bottom:19px}
 .hero-wordmark{font-size:23px;letter-spacing:.1em}
 .hero-brand-line{font-size:6px;letter-spacing:0;margin-top:4px}
 .mobile-photo-note{left:20px;bottom:22px;font-size:18px}
}
@media(max-width:360px){.mobile-photo-note{left:18px;font-size:16px}.hero-image>.hero-brand{right:14px;bottom:21px}.hero-wordmark{font-size:21px}.hero-brand-line{font-size:5.5px}}

.service-continuity{font-size:14px;line-height:2;max-width:850px;margin:26px auto 0;color:#53625a}
.service-claim .claim-line{display:block}

.footer-links{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem}.footer-links a{color:inherit}@media(max-width:600px){.footer-links{justify-content:center}}
