@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');

:root{--ink:#09213f;--blue:#173f71;--cream:#f6f2e9;--paper:#fcfaf5;--sand:#dcc9ad;--white:#fff;--line:rgba(9,33,63,.16);--pad:clamp(24px,6vw,96px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:8px 16px;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:88px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;transition:.3s}.site-header.scrolled{height:72px;background:rgba(252,250,245,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand img{width:142px}.site-nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.site-nav a:not(.nav-cta){position:relative}.site-nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:.25s}.site-nav a:hover::after{transform:scaleX(1);transform-origin:left}.nav-cta{padding:11px 23px;border:1px solid var(--ink);border-radius:99px}.menu-button{display:none;border:0;background:none;padding:8px}.menu-button>span:not(.sr-only){display:block;width:25px;height:1px;background:var(--ink);margin:6px}
.hero{min-height:100svh;padding:150px var(--pad) 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.9fr);align-items:center;gap:6vw;position:relative;overflow:hidden;background:radial-gradient(circle at 86% 12%,#e8dcc8 0,transparent 28%),var(--cream)}.hero-copy{max-width:720px}.eyebrow{font:600 11px/1.2 "DM Sans",sans-serif;letter-spacing:.22em;margin:0 0 28px}.hero h1,.section-heading h2,.idea h2,.closing h2{font-size:clamp(48px,7vw,104px);line-height:1.15;letter-spacing:-.055em;margin:0;font-weight:500}.hero h1 em,.section-heading h2 em,.idea h2 em{font-style:normal;color:var(--blue)}.hero-lead{max-width:570px;font-size:clamp(15px,1.25vw,19px);margin:36px 0}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border-radius:99px;padding:16px 23px;font-size:13px;font-weight:600;transition:.25s}.primary{background:var(--ink);color:white}.button:hover{transform:translateY(-3px)}.text-link{font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:3px}.hero-visual{position:relative;aspect-ratio:1;max-width:650px}.hero-mark{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);font:500 clamp(100px,18vw,250px)/1 "DM Sans";color:var(--ink)}.orbit{position:absolute;border:1px solid rgba(9,33,63,.25);border-radius:50%;inset:8%;animation:spin 30s linear infinite}.orbit::after{content:"";position:absolute;width:13px;height:13px;background:var(--sand);border-radius:50%;top:13%;left:9%}.orbit-two{inset:23%;animation-direction:reverse;animation-duration:18s}.learning-card{position:absolute;width:175px;padding:16px 18px;background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(9,33,63,.08);backdrop-filter:blur(8px);font-size:11px}.learning-card span{opacity:.55}.learning-card strong{display:block;font-size:13px;margin-top:4px}.learning-card i{position:absolute;right:12px;top:12px;font:500 10px "DM Sans";font-style:normal}.card-a{left:0;top:20%}.card-b{right:0;top:45%}.card-c{left:12%;bottom:8%}.scroll-note{position:absolute;left:var(--pad);bottom:25px;font:500 9px "DM Sans";letter-spacing:.2em;display:flex;gap:12px;align-items:center}.scroll-note span{display:block;width:60px;height:1px;background:var(--ink)}
.section-pad{padding:140px var(--pad);position:relative}.section-index{font:500 10px "DM Sans";letter-spacing:.17em;border-top:1px solid var(--line);padding-top:12px;margin-bottom:100px}.idea-grid{display:grid;grid-template-columns:1.05fr .75fr;gap:10vw}.idea h2{font-size:clamp(40px,5.4vw,78px)}.idea-body{padding-top:80px}.idea-body p{max-width:590px}.idea-body .large-copy{font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.7;margin-bottom:36px}
.cycle{background:var(--ink);color:white}.section-index.light{border-color:rgba(255,255,255,.25)}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:100px}.section-heading h2{font-size:clamp(40px,5.5vw,76px)}.cycle .section-heading h2 em{color:#d7c2a5}.cycle-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18)}.cycle-list li{display:grid;grid-template-columns:90px 1fr;padding:36px 0;border-bottom:1px solid rgba(255,255,255,.18)}.cycle-list li>span{font:500 12px "DM Sans";opacity:.5}.cycle-list div{display:grid;grid-template-columns:minmax(180px,.6fr) 1fr;gap:50px;align-items:center}.cycle-list h3{font-size:clamp(25px,3vw,40px);margin:0;font-weight:500}.cycle-list p{max-width:560px;margin:0;color:rgba(255,255,255,.68)}
.features .section-heading{display:block}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{min-height:440px;padding:28px;background:var(--cream);display:flex;flex-direction:column;position:relative;transition:.3s}.feature-card:hover{transform:translateY(-7px);background:#eee6d8}.feature-card>span{font:500 11px "DM Sans"}.feature-icon{margin:auto;font-size:72px;font-weight:300}.feature-card h3{font-size:20px;margin:0 0 12px}.feature-card p{font-size:14px;margin:0;color:rgba(9,33,63,.7)}
.closing{min-height:720px;background:var(--blue);color:#fff;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;padding:100px 24px}.closing-copy{position:relative;z-index:2}.closing h2{font-size:clamp(48px,7vw,94px)}.closing-copy>p:not(.eyebrow){color:rgba(255,255,255,.7);margin:20px 0 40px}.light-button{background:#fff;color:var(--ink)}.closing-ring{position:absolute;width:min(75vw,850px);aspect-ratio:1;border:1px solid rgba(255,255,255,.16);border-radius:50%}.closing-ring::before,.closing-ring::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;inset:12%}.closing-ring::after{inset:28%}
.site-footer{padding:70px var(--pad) 30px;background:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.site-footer img{width:140px}.site-footer>p{grid-column:1;font-size:13px;margin:0}.site-footer nav{grid-column:2;grid-row:1/3;display:flex;justify-content:flex-end;gap:30px;font-size:12px}.site-footer small{grid-column:1/3;border-top:1px solid var(--line);padding-top:20px;margin-top:25px;font:10px "DM Sans";letter-spacing:.1em}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:820px){.site-header{height:72px}.brand img{width:120px}.menu-button{display:block;z-index:2}.site-nav{position:fixed;inset:0;background:var(--paper);flex-direction:column;justify-content:center;font-size:18px;transform:translateX(100%);transition:.35s}.site-nav.open{transform:none}.hero{grid-template-columns:1fr;padding-top:120px}.hero-visual{width:100%;max-width:480px;margin:auto}.hero h1{font-size:clamp(48px,15vw,76px)}.idea-grid{grid-template-columns:1fr}.idea-body{padding-top:10px}.section-pad{padding-top:100px;padding-bottom:100px}.section-index{margin-bottom:60px}.section-heading{display:block;margin-bottom:55px}.cycle-list li{grid-template-columns:45px 1fr}.cycle-list div{display:block}.cycle-list p{margin-top:12px}.feature-grid{grid-template-columns:1fr}.feature-card{min-height:340px}.site-footer{grid-template-columns:1fr}.site-footer nav{grid-column:1;grid-row:auto;justify-content:flex-start;flex-wrap:wrap}.site-footer small{grid-column:1}.scroll-note{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Existing WordPress LP visual language, migrated to the static site. */
.hero h1{font-size:clamp(38px,4.1vw,60px);line-height:1.28;letter-spacing:-.04em}
.idea h2,.section-heading h2{font-size:clamp(34px,4vw,56px);line-height:1.3;letter-spacing:-.04em}
.community-grid h2{font-size:clamp(32px,3.5vw,50px)}
.closing h2{font-size:clamp(38px,5vw,68px)}
.hero-visual{position:relative;max-width:650px}.hero-image{aspect-ratio:auto;padding:22px;background:rgba(255,255,255,.76);border-radius:44px 44px 44px 14px;box-shadow:0 28px 80px rgba(9,33,63,.1)}.hero-image img{width:100%}.hero-image p{margin:10px 4px 0;font-size:11px;color:rgba(9,33,63,.6)}
.principles{display:grid;grid-template-columns:repeat(4,1fr);padding:0 var(--pad);background:#fffdf8;border-block:1px solid #e9dfcf}.principles div{padding:25px 22px;border-right:1px solid #e9dfcf}.principles div:last-child{border:0}.principles span,.principles strong{display:block}.principles span{color:#b77d21;font:600 10px "DM Sans";letter-spacing:.12em}.principles strong{font-size:14px;margin-top:3px}
.paths{background:#fffdf8}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.path-card{position:relative;overflow:hidden;min-height:340px;padding:42px 46% 36px 36px;border-radius:38px 38px 38px 14px}.path-card.family{background:#f9edcf}.path-card.community{background:#dfeaf0}.path-card div{position:relative;z-index:2}.path-card span{font:600 11px "DM Sans";letter-spacing:.12em}.path-card h3{font-size:clamp(22px,2.4vw,30px);line-height:1.4;margin:12px 0}.path-card p{font-size:14px;color:rgba(9,33,63,.7)}.path-card a{display:inline-block;margin-top:12px;font-size:13px;font-weight:700;border-bottom:1px solid}.path-card img{position:absolute;right:1%;bottom:8px;width:48%;height:280px;object-fit:contain;object-position:center bottom}
.cycle-list li{grid-template-columns:76px 60px 1fr;gap:20px;align-items:center;padding:28px 0}.cycle-list li>img{width:66px;height:66px;object-fit:cover;border-radius:50%}.cycle-list div{grid-template-columns:minmax(220px,.6fr) 1fr}.cycle-list h3{font-size:clamp(23px,2.6vw,34px)}
.feature-card>span{letter-spacing:.1em}.feature-card>img{width:100%;height:210px;object-fit:contain;margin:14px 0}.feature-card h3{margin:auto 0 12px}
.community-section{background:#f7f3eb}.community-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.community-grid h2{font-size:clamp(32px,3.5vw,50px);line-height:1.35;margin:0}.community-grid h2 em{font-style:normal;color:#b77d21}.community-grid p:not(.eyebrow){margin-top:30px;color:rgba(9,33,63,.7)}.community-grid>img{width:100%;background:white;padding:20px;border-radius:36px 36px 36px 12px;box-shadow:0 20px 60px rgba(9,33,63,.09)}
.section-index{margin-bottom:42px}.pricing{background:#fffaf0}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{position:relative;padding:36px 28px;background:white;border:1px solid #eadfc9;border-radius:30px 30px 30px 10px;text-align:center}.price-card.recommended{border:2px solid #d19a3b;box-shadow:0 18px 50px rgba(177,125,36,.12)}.price-card>b{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:#c58b2f;color:white;border-radius:99px;padding:4px 16px;font-size:11px}.price-card>span{display:block;font-weight:700;color:var(--blue)}.price-card>strong{display:block;font:600 40px/1.2 "DM Sans";margin:20px 0}.price-card small{display:block;font:500 11px "Noto Sans JP";margin-top:8px;color:#66758a}.price-card p{font-size:13px;color:rgba(9,33,63,.7)}.price-note{text-align:center;font-size:11px;color:#758195;margin-top:20px}
@media(max-width:820px){.section-index{margin-bottom:32px}.hero h1{font-size:clamp(36px,10vw,50px)}.idea h2,.section-heading h2{font-size:clamp(30px,8vw,42px)}.principles{grid-template-columns:1fr 1fr}.principles div:nth-child(2){border-right:0}.principles div:nth-child(-n+2){border-bottom:1px solid #e9dfcf}.path-grid,.community-grid{grid-template-columns:1fr}.path-card{min-height:420px;padding:30px 25px 230px}.path-card img{width:90%;height:220px;right:5%}.cycle-list li{grid-template-columns:58px 35px 1fr;gap:12px}.cycle-list li>img{width:54px;height:54px}.price-grid{grid-template-columns:1fr}}

/* Match the original WordPress theme's scale and visual rhythm. */
:root{--pad:max(20px,calc((100vw - 1120px)/2))}
.site-header{height:82px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(7,27,53,.08)}
.site-header.scrolled{height:72px}.hero{min-height:560px;padding:118px var(--pad) 58px;grid-template-columns:.9fr 1.1fr;gap:42px;background:linear-gradient(135deg,#fff 0%,#fffcf5 60%,#f9f0df 100%)}
.hero h1{font-size:clamp(31px,3.7vw,47px);line-height:1.48}.hero-lead{font-size:16px;margin:22px 0 30px}.hero-image{padding:0;background:transparent;border-radius:0;box-shadow:none}.hero-image p{text-align:right;margin-right:18px}
.section-pad{padding:96px var(--pad)}.eyebrow{margin-bottom:14px;color:#3565a8;font-size:12px}.idea-grid{grid-template-columns:1fr 1fr;gap:80px}.idea h2,.section-heading h2{font-size:clamp(25px,2.8vw,35px);line-height:1.55;letter-spacing:-.02em}.idea-body{padding-top:44px}.idea-body .large-copy{font-size:clamp(20px,2.35vw,28px)}
.section-heading{display:block;max-width:750px;margin-bottom:54px}.path-card{border-radius:38px 38px 38px 14px;box-shadow:none}.path-card:hover{transform:translateY(-5px);box-shadow:0 18px 60px rgba(12,36,69,.1)}
.cycle{color:var(--ink);background:#fff}.cycle .section-heading h2 em{color:#d69224}.cycle-list{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;border:0}.cycle-list li{display:flex;min-width:0;padding:20px 14px 24px;flex-direction:column;gap:8px;text-align:center;background:#fffaf1;border:0;border-radius:22px}.cycle-list li>img{width:82px;height:82px;margin:0 auto 6px}.cycle-list li>span{color:#3565a8;opacity:1;font-weight:700}.cycle-list div{display:block}.cycle-list h3{font-size:15px;font-weight:700}.cycle-list p{margin-top:8px;color:var(--ink-soft);font-size:13px;line-height:1.75}.cycle-list li:not(:last-child)::after{content:"→";position:absolute;z-index:3;right:-20px;top:76px;display:grid;width:34px;height:34px;place-items:center;color:#fff;background:#d99a2b;border:4px solid #fff;border-radius:50%;font-weight:900}.cycle-list li{position:relative}
.features{background:#f3f7f4}.feature-grid{gap:22px}.feature-card{min-height:0;padding:28px 27px 32px;background:rgba(255,255,255,.94);border:1px solid rgba(23,58,112,.06);border-radius:32px 32px 32px 12px;box-shadow:0 16px 50px rgba(12,36,69,.055)}.feature-card:hover{background:#fff}.feature-card:nth-child(2){transform:translateY(18px)}.feature-card>img{height:190px;margin:-4px auto 18px}.feature-card h3{margin:0 0 12px;font-size:23px}.feature-card p{font-size:15px}
.community-grid{gap:70px}.community-grid h2{font-size:clamp(29px,3.7vw,44px);line-height:1.5}.community-grid>img{border-radius:34px 34px 34px 12px}.price-card>strong{font-size:38px}.closing{min-height:560px}.closing h2{font-size:clamp(34px,4vw,52px)}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:110px}.idea-grid,.community-grid{grid-template-columns:1fr}.cycle-list{grid-template-columns:repeat(3,1fr)}.cycle-list li::after{display:none!important}.feature-card:nth-child(2){transform:none}}
@media(max-width:600px){.section-pad{padding:78px 20px}.hero{padding-inline:20px}.hero h1{font-size:34px}.cycle-list{grid-template-columns:1fr}.principles{grid-template-columns:1fr}.principles div{border-right:0;border-bottom:1px solid #e9dfcf}.principles div:last-child{border-bottom:0}}
