:root{--navy:#102f3d;--deep:#09232f;--ivory:#f6f3eb;--gold:#bb985d;--ink:#24434a;--muted:#6d7b7d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:15px;line-height:2}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,.brand,.mentor-type,.statement{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:400}header{height:88px;padding:0 5%;display:flex;align-items:center;gap:45px;background:var(--deep);color:var(--ivory);border-bottom:1px solid #ffffff20;position:relative;z-index:2}.brand{font-size:29px;letter-spacing:.13em;white-space:nowrap}.brand small{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.17em;margin-left:17px}nav{display:flex;gap:30px;margin-left:auto;font-size:12px}.navcta{font-size:12px;border-bottom:1px solid var(--gold);padding:8px 0}.navcta span{margin-left:20px;color:var(--gold)}.hero{background:var(--deep);color:var(--ivory);position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:800px;padding:70px 6% 70px 9%;gap:4%;overflow:hidden}.hero-copy{align-self:center}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--gold);font-family:Arial,sans-serif;font-weight:500}.hero-label{font-size:12px;letter-spacing:.15em;margin-top:24px}h1{font-size:clamp(50px,5.4vw,82px);line-height:1.55;letter-spacing:.06em;margin:20px 0}h1 span{color:#d8bc83}.lead{font-size:17px;letter-spacing:.04em}.hero-desc{color:#bdc9cc;font-size:13px;line-height:2.3;margin:24px 0 30px}.hero-art{align-self:center}.hero-art img{width:100%;max-height:750px;object-fit:contain;display:block;box-shadow:0 25px 70px #0003}.button{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;font-size:13px;letter-spacing:.06em;max-width:340px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.gold{background:#c6a66e;color:#102f3d}.gold:hover{background:#ddc598}.navy{background:var(--navy);color:var(--ivory)}.hero-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:10px;color:#aebdc1;margin-top:27px}.hero-meta span+span{border-left:1px solid #ffffff30;padding-left:16px}.scroll{position:absolute;bottom:20px;left:9%;font-size:9px;letter-spacing:.2em;color:#a9b7bc}.light{background:var(--ivory)}.dark{background:var(--navy);color:var(--ivory)}section:not(.hero){padding:100px 10%}.section-mark{font-size:10px;letter-spacing:.2em;color:var(--gold);font-family:Arial,sans-serif}.intro{display:grid;grid-template-columns:1fr 2fr;gap:40px}.kicker{font-size:13px;letter-spacing:.1em;margin-bottom:20px}h2{font-size:clamp(30px,3vw,46px);line-height:1.65;letter-spacing:.06em}.intro p:not(.kicker){margin-top:28px;font-size:15px;line-height:2.5}.intro .statement{font-size:25px!important;margin-top:40px!important;color:#99773e}.audience{border-top:1px solid #203c411c;display:grid;grid-template-columns:1fr 1fr;gap:40px}.section-heading h2{margin-top:16px}.audience-list p{padding:20px 0 24px 45px;border-bottom:1px solid #203c4126;position:relative}.audience-list span{position:absolute;left:0;color:var(--gold);font-size:12px}.note{color:var(--muted);font-size:11px;grid-column:1/-1}.program .section-heading{margin-top:34px}.support{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px;gap:30px}.support article{border-top:1px solid #bda37266;padding-top:22px}.number{font-family:Georgia,serif;font-size:36px;color:var(--gold)}.frequency{font-size:9px;letter-spacing:.15em;color:#96acb6;margin-top:22px}.support h3{font-weight:400;font-size:20px;margin:8px 0 18px}.support article>p:last-child{font-size:13px;color:#c2ced1;line-height:2.1}.journey>h2{margin:25px 0 45px}.timeline article{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-top:1px solid #203c4128;padding:30px 0}.month{font-family:Georgia,serif;font-size:32px;color:#a18045}.month small{font-family:Arial,sans-serif;display:block;font-size:9px;letter-spacing:.15em}.timeline h3{font-size:19px;font-weight:500;margin-bottom:12px}.timeline article div p{font-size:14px;color:var(--muted)}.mentor{display:grid;grid-template-columns:1fr 1.6fr;gap:70px;background:linear-gradient(125deg,#173e4b,#0b2733)}.mentor-type{font-size:clamp(70px,8vw,120px);line-height:1.6;color:#bf9e62;border-top:1px solid #bf9e6255;padding-top:30px}.mentor h2{font-size:33px;margin:20px 0 30px}.mentor h3{font-size:24px;font-weight:400}.mentor h3 small{display:block;font-size:10px;letter-spacing:.2em;color:var(--gold);margin:3px 0 20px}.mentor p:not(.eyebrow){font-size:14px;color:#c3ced0;margin-top:16px}.mentor-org{font-size:11px;color:#b79b65;display:block;margin-top:25px}.pricing{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.pricing h2{margin:24px 0}.pricing>div>p:last-child{font-size:13px;color:var(--muted)}.price-box{border:1px solid #bca477;padding:36px}.price-label{font-size:13px}.price{font-family:Georgia,serif;font-size:60px;line-height:1.6;margin-top:10px;color:var(--navy)}.price small,.price span{font-family:sans-serif;font-size:14px;margin:0 10px}.tax{font-size:11px;color:var(--muted)}dl{margin:28px 0}dl div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #203c4120;padding:13px 0;font-size:12px}dd{margin:0;text-align:right}dt{color:var(--muted)}.price-box .button{max-width:none}.faq{padding-top:20px!important}.faq h2{font-size:30px;margin:15px 0 30px}.faq details{border-top:1px solid #203c4129}.faq details:last-child{border-bottom:1px solid #203c4129}.faq summary{cursor:pointer;padding:23px 35px 23px 0;list-style:none;position:relative;font-size:14px}.faq summary:after{content:'＋';position:absolute;right:4px;color:#9d7c42}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;max-width:850px;padding-bottom:25px;color:var(--muted)}.entry{text-align:center;background:radial-gradient(ellipse at 50% 130%,#426068 0,#102f3d 65%)}.entry h2{margin:25px 0}.entry>p:not(.eyebrow){font-size:13px;color:#c6d0d1}.entry-status{border:1px solid #bba16b88;display:inline-flex;align-items:center;gap:13px;padding:16px 30px;margin-top:32px;color:#e4cca0;font-size:14px}.dot{width:6px;height:6px;background:var(--gold);border-radius:50%}.entry-note{margin-top:20px;font-size:12px!important}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid #ac9463;margin-top:28px;padding-bottom:5px}footer{padding:35px 6%;background:#09232f;color:#e6e5dc;display:flex;align-items:center;gap:40px}footer p,footer>small{font-size:11px}footer>small{margin-left:auto;color:#9aafb5}.mobile{display:none}@media(max-width:900px){header{gap:20px;padding:0 5%;height:72px}nav{display:none}.navcta{margin-left:auto}.hero{padding:45px 6% 65px;gap:25px;min-height:0}h1{font-size:49px}.lead{font-size:14px}.hero-art img{max-height:640px}.hero-meta{font-size:9px;gap:8px}.hero-meta span+span{padding-left:8px}section:not(.hero){padding:70px 7%}.support{grid-template-columns:1fr 1fr;gap:35px}.pricing{gap:30px}.price-box{padding:24px}.price{font-size:46px}.mentor{gap:35px}.mentor h2{font-size:27px}.intro{grid-template-columns:1fr 2fr}}@media(max-width:600px){.brand{font-size:24px}.brand small{font-size:8px;margin-left:10px}.navcta{font-size:10px}.hero{grid-template-columns:1fr;padding:45px 7% 65px}.hero-copy{padding-bottom:10px}h1{font-size:58px;line-height:1.5}.hero-label{margin-top:18px}.hero-art{max-width:390px;width:100%;margin:0 auto}.hero-art img{max-height:none}.hero-desc{font-size:13px}.scroll{left:7%}.intro,.audience,.mentor,.pricing{grid-template-columns:1fr;gap:30px}.intro .section-mark{margin-bottom:5px}.intro p:not(.kicker){font-size:13px}.audience{gap:20px}.support{gap:30px 20px}.support h3{font-size:17px}.support article>p:last-child{font-size:12px}.timeline article{grid-template-columns:1fr;gap:10px}.month small{display:inline;margin-left:15px}.timeline h3{font-size:17px}.timeline article div p{font-size:13px}.mentor-type{font-size:58px;line-height:1.3}.mentor-type br{display:none}.mentor h2{font-size:28px}.price-box{padding:27px}.price{font-size:60px}.entry-status{font-size:12px;padding:14px 18px}footer{flex-wrap:wrap;gap:15px 25px}footer>small{width:100%;margin-left:0}.mobile{display:block}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media(min-width:601px) and (max-width:1100px){h1{font-size:clamp(30px,4.5vw,49px);letter-spacing:.025em}}@media(max-width:380px){h1{font-size:49px}.price{font-size:52px}}
/* Official KOKOH visual direction: forest, light, quiet Mincho typography. */
:root{--navy:#1b2423;--deep:#121b19;--ivory:#f8f7f3;--ink:#303a35;--gold:#a69570;--muted:#737b74}body{font-family:'Yu Mincho','Hiragino Mincho ProN',serif}header{position:absolute;top:0;left:0;width:100%;background:transparent;border:0;height:95px;color:white}.hero{display:flex;justify-content:center;align-items:center;text-align:center;min-height:100svh;padding:140px 7% 110px;background:linear-gradient(180deg,#0c171d45,#07130d66),url('assets/forest.webp') center/cover}.hero-copy{width:100%;text-shadow:0 2px 18px #0005}.hero .eyebrow{font-family:inherit;color:#eee;font-size:12px;letter-spacing:.35em}.hero-name{font-size:clamp(76px,10vw,132px);line-height:1.5;letter-spacing:.3em;padding-left:.3em;margin-top:25px}.roman{font-family:Georgia,serif;font-size:12px;letter-spacing:.3em;color:#ddd}.hero h1{font-size:clamp(26px,3.5vw,46px);line-height:1.8;letter-spacing:.2em;margin:35px 0 20px}.hero .lead{font-size:14px;letter-spacing:.16em}.hero .button{margin:40px auto 0;border:1px solid #ffffff88;background:transparent;color:white;max-width:300px}.hero .button:hover{background:#ffffff1c}.scroll{left:50%;transform:translateX(-50%);color:white;bottom:30px}.intro{background:linear-gradient(90deg,#0b1413d9,#0b1413c4),url('assets/river.webp') center/cover;color:#f3f4ef;padding-top:140px!important;padding-bottom:140px!important}.intro .section-mark{color:#c3c9bb}.intro .statement{color:#d1c9b6}.intro p:not(.kicker){line-height:2.9}.section-mark,.eyebrow{letter-spacing:.22em}.audience{padding-top:120px!important;padding-bottom:120px!important}.dark{background:#1b2423}.program{background:#eaece6;color:#303a35}.support article{border-color:#a6ad9d}.support article>p:last-child{color:#5c665e}.frequency{color:#74816f}.number{color:#89937c}.support h3{font-family:inherit}.mentor{background:#23302b}.mentor-type{border:0;padding:0}.mentor-type img{display:block;width:100%;max-width:340px;margin:auto}.mentor h2{font-size:30px}.mentor p:not(.eyebrow){color:#d2d8d2}.mentor-org{color:#b5bea5}.pricing{background:#eff0e9}.price-box{border-color:#a9b09b;background:#fafaf6}.price{color:#303c30}.navy{background:#354837}.button{font-family:'Yu Gothic',sans-serif}.gold{background:#dddccf;color:#25372a}.entry{background:linear-gradient(#0b1718b3,#0b1718d6),url('assets/forest.webp') center/cover}.entry-status{border-color:#bac3ad;color:#e5e8dc}.entry .contact{margin:30px auto 0;max-width:330px}footer{background:#121b19}.faq h2{font-size:30px}@media(max-width:600px){header{height:74px}.hero{min-height:850px;min-height:100svh;padding:140px 7% 100px}.hero h1{font-size:25px;letter-spacing:.1em;white-space:nowrap}.hero .lead{font-size:12px;letter-spacing:.03em}.hero-name{font-size:90px}.intro{padding-top:90px!important;padding-bottom:90px!important}.audience{padding-top:75px!important;padding-bottom:75px!important}.mentor-type img{max-width:260px}.hero .eyebrow{font-size:10px;letter-spacing:.2em}}

/* Shido: a chosen path, shared practice. */
.hero h1{line-height:1.75;margin-top:28px}.hero-name{margin-top:12px}.support-note{margin-top:35px;max-width:800px;line-height:2}.shido-seal{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #a6957055;min-height:390px;color:#ddd6c4}.shido-seal>span{font-size:100px;letter-spacing:.2em;padding-left:.2em}.shido-seal>small{font-size:12px;letter-spacing:.45em}.shido-seal p{font-size:18px!important;line-height:2.1;margin-top:25px!important}.hero .eyebrow{letter-spacing:.16em}.hero .lead{line-height:2}@media(max-width:600px){.hero h1{white-space:normal;font-size:29px}.hero .eyebrow{font-size:10px;letter-spacing:.06em}.shido-seal{min-height:300px}.shido-seal>span{font-size:85px}.shido-seal p br{display:block}.price{font-size:clamp(42px,12vw,60px)}}
