:root{--ink:#1d1a1a;--orange:#ea5532;--light:#eee;--gradient:linear-gradient(90deg,#e83820 0%,#ea5532 21.5%,#ff9600 100%);--vertical:linear-gradient(#e83820 0%,#ea5532 21.5%,#ff9600 100%)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:145px}body{margin:0;color:var(--ink);background:white;font-family:"Noto Sans JP",sans-serif;font-size:16px;font-weight:700;letter-spacing:.1em;line-height:2.25}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure,h1,h2,h3,h4,p{margin:0}em{font-style:normal}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip{position:fixed;top:-60px;left:20px;background:#fff;z-index:20}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:10;min-height:120px;display:flex;align-items:center;justify-content:space-between;padding:24px 30px;background:white;box-shadow:0 4px 18px #1d1a1a04}.brand img{width:271.207px;height:auto;object-fit:contain}.header nav{display:flex;gap:30px;align-items:center}.header nav a{display:flex;align-items:center;gap:8px;font-size:15px;letter-spacing:.2em;line-height:1.5;white-space:nowrap}.header nav a::before{content:"";width:12px;height:14px;background:url('/emo/assets/emo-nav-arrow.webp') center/contain no-repeat}.header nav a:hover{color:var(--orange)}.menu-toggle,.mobile-nav{display:none}
.hero{padding:86px 40px 100px;background:url('/emo/assets/emo-hero-bg.webp') center top/100% 100% no-repeat;text-align:center}.eyebrow{font-size:18px;letter-spacing:.2em;margin-bottom:24px}.hero h1{font-size:clamp(40px,5.2vw,72px);font-weight:900;line-height:1.4;letter-spacing:.15em;color:#000}.hero-film{position:relative;max-width:1440px;margin:40px auto 0;border-radius:20px;overflow:hidden;background:#1d1a1a;aspect-ratio:16/9}.hero video{display:block;width:100%;height:100%;object-fit:cover}.hero-film button{position:absolute;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;border:1px solid #ffffff80;border-radius:30px;background:#1d1a1a80;color:white;padding:8px 18px;font-size:12px;letter-spacing:.08em;backdrop-filter:blur(5px)}#video-icon{font-family:Roboto,sans-serif;font-size:17px}.hero-link{display:flex;justify-content:center;align-items:center;gap:25px;margin:35px auto 0;width:max-content;font-size:14px}.hero-link span{display:grid;place-items:center;background:var(--vertical);color:#fff;width:38px;height:38px;border-radius:50%;line-height:1}
.section{padding-top:140px;padding-bottom:140px}.section-title{display:flex;gap:16px;align-items:center;font-size:36px;font-weight:900;line-height:1.4;letter-spacing:.1em}.section-title::before{content:"";flex:none;width:24px;height:24px;background:url('/emo/assets/emo-heading-mark.webp') center/contain no-repeat}.section-heading{max-width:1000px;margin:0 auto 55px}.section-heading h3{margin-top:26px;font-size:30px;font-weight:700;line-height:1.6;letter-spacing:.1em}.section-heading p{margin-top:22px}.vision{background:url('/emo/assets/emo-vision-bg.webp') center/cover no-repeat}.vision-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-right:40px;max-width:1600px;margin:auto}.vision-photo{height:720px;overflow:hidden;border-radius:0 20px 20px 0}.vision-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.vision-copy h3{font-weight:900;font-size:36px;line-height:1.55;letter-spacing:.05em;margin-top:30px;margin-bottom:32px}.vision-copy p+p{margin-top:20px}.pill-link{display:flex;align-items:center;justify-content:center;gap:22px;max-width:360px;padding:8px 28px;margin-top:42px;background:var(--vertical);border-radius:50px;color:white;letter-spacing:.2em;font-size:16px;transition:opacity .2s}.pill-link:hover{opacity:.8}.venture-definition{max-width:1000px;margin:85px auto 0;border-top:1px solid #dedbd8;padding-top:25px;display:flex;align-items:center;gap:35px}.venture-definition span{color:var(--orange);font-size:14px;flex-shrink:0}.venture-definition p{font-size:15px}.mobile-break{display:none}
.ability{background:url('/emo/assets/emo-section-bg.webp') center/cover no-repeat;padding-top:20px}.classroom-photo{width:83%;height:560px;margin:0 0 65px auto;border-radius:20px 0 0 20px;overflow:hidden}.classroom-photo img{width:100%;height:100%;object-fit:cover}.ability-inner{max-width:1000px;margin:auto}.ability-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ability-list article{padding:30px 25px 36px;border-radius:10px;background:white;border:1px solid #f0ded3;position:relative;overflow:hidden}.ability-list article::before{content:"";position:absolute;top:0;left:0;width:100%;height:7px;background:var(--gradient)}.ability-list h3{color:var(--orange);font-size:22px;line-height:1.6;letter-spacing:.05em;margin-bottom:20px}.ability-list p{font-size:14px;line-height:2.1;letter-spacing:.05em}
/* The four Ps form one continuous practice system. */
.system{overflow:clip;padding-left:40px;padding-right:40px}
.system .section-heading h3 span{display:inline-block}
.system-layout{max-width:1080px;margin:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:70px;align-items:center}
.wheel-wrap{position:relative;isolation:isolate;text-align:center;width:100%;max-width:520px;aspect-ratio:1;margin-inline:auto}
.wheel-wrap::before{content:"";position:absolute;z-index:-1;inset:-9%;border-radius:50%;background:linear-gradient(145deg,#e83820 8%,#ea5532 44%,#ff9600 86%);opacity:.62;filter:blur(18px);-webkit-mask-image:radial-gradient(circle closest-side,#000 48%,#000c 65%,#0005 83%,transparent 100%);mask-image:radial-gradient(circle closest-side,#000 48%,#000c 65%,#0005 83%,transparent 100%);pointer-events:none}
.fourp-wheel{display:block;width:100%;height:auto;max-width:520px;margin:auto;overflow:visible}
.p-list{display:grid;gap:0}
.p-list article{border-bottom:1px solid #eadfd8;padding:22px 0 24px}
.p-list article:first-child{padding-top:0}
.p-list article:last-child{border:0;padding-bottom:0}
.p-list h4{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;line-height:1.4;letter-spacing:.03em}
.p-name{display:block;color:var(--orange);font:900 34px/1.2 Roboto,sans-serif;letter-spacing:0}
.p-role{font-size:14px;font-weight:700;line-height:1.8}
.p-list p{font-size:14px;font-weight:500;line-height:2;margin-top:10px;letter-spacing:.04em}
.journey{padding-left:40px;padding-right:40px;background:url('/emo/assets/emo-section-bg.webp') center/100% 100% no-repeat}.journey-stage{max-width:1000px;margin:auto;display:grid;grid-template-columns:240px 1fr;gap:40px}.phase{display:inline-block;color:white;background:var(--gradient);padding:8px 24px;border-radius:30px;font-size:16px;line-height:1.6;letter-spacing:.1em}.stage-title h3{font-size:24px;line-height:1.5;margin:20px 0}.stage-title p{font-size:14px}.stage-content{background:#fff;border:1px solid #eeded3;border-radius:12px;overflow:hidden}.playbook-bar{background:var(--gradient);color:white;text-align:center;padding:15px 18px;font-size:14px;letter-spacing:.05em}.cycle{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;padding:34px 25px 20px;text-align:center}.cycle-node{padding:25px 8px;background:#fff7ed;border-radius:8px}.cycle-node h4{font-size:19px;color:var(--orange);line-height:1.7;letter-spacing:.03em}.cycle-node p{font-size:12px;line-height:2;margin-top:12px;letter-spacing:.02em}.cycle-arrows{display:flex;flex-direction:column;font-size:24px;color:var(--orange);line-height:1.5}.stage-note{text-align:center;font-size:13px;margin:0 15px 28px;letter-spacing:.03em}.continuation{max-width:1000px;margin:25px auto 40px;display:flex;align-items:center;gap:20px;color:var(--orange);font-size:14px}.continuation span{height:55px;width:2px;background:var(--gradient);margin-left:35px}.ongoing .stage-content{padding:10px 30px}.ongoing-row{display:flex;gap:25px;padding:25px 0;align-items:flex-start}.ongoing-row+.ongoing-row{border-top:1px solid #eaded6}.cadence{display:block;flex-shrink:0;color:var(--orange);width:84px;font-size:14px;padding-top:4px}.ongoing-row h4{font-size:18px;line-height:1.8;letter-spacing:.04em}.ongoing-row p{font-size:12px;letter-spacing:.03em;margin-top:8px}
@media(min-width:1600px){.hero{padding-left:max(40px,calc((100vw - 1440px)/2));padding-right:max(40px,calc((100vw - 1440px)/2))}}
@media(max-width:1100px){.header nav{gap:18px}.header nav a{font-size:13px;letter-spacing:.1em}.brand img{width:229.483px;height:auto}.vision-layout{gap:35px}.vision-photo{height:650px}.vision-copy h3{font-size:30px}.vision-copy p{font-size:14px}.ability-inner,.section-heading,.venture-definition{margin-left:40px;margin-right:40px}.system .section-heading,.journey .section-heading{margin-left:0;margin-right:0}.system-layout{gap:40px}.journey-stage{grid-template-columns:220px 1fr;gap:25px}.classroom-photo{height:480px}.section{padding-top:100px;padding-bottom:100px}.ability{padding-top:20px}.ability-list{gap:16px}.ability-list article{padding:25px 18px}.ability-list h3{font-size:20px}}
@media(max-width:760px){html{scroll-padding-top:90px}.header{min-height:80px;padding:16px 20px}.header .brand img{width:208.621px;height:auto}.header nav{display:none}.menu-toggle{display:flex;width:40px;height:40px;border:0;background:none;flex-direction:column;justify-content:center;gap:7px;padding:7px}.menu-toggle span{width:26px;height:2px;background:var(--ink)}.mobile-nav:not([hidden]){display:flex;position:fixed;top:80px;left:0;right:0;background:#fff;z-index:9;padding:22px 25px 30px;flex-direction:column;gap:15px;box-shadow:0 8px 12px #00000008}.mobile-nav a{font-size:15px}.hero{padding:48px 20px 60px;background-size:auto 100%}.eyebrow{font-size:12px;letter-spacing:.08em;margin-bottom:20px}.hero h1{font-size:clamp(26px,5.7vw,42px);letter-spacing:.08em;line-height:1.6}.hero-film{margin-top:30px;border-radius:12px;aspect-ratio:4/3}.hero-film button{bottom:12px;right:12px;padding:5px 12px;font-size:10px}.hero-link{font-size:12px;margin-top:22px}.hero-link span{width:30px;height:30px}.section{padding-top:70px;padding-bottom:70px}.section-title{font-size:27px;gap:12px;letter-spacing:.08em}.section-title::before{width:19px;height:19px}.section-heading{margin:0 24px 35px}.section-heading h3{font-size:23px;letter-spacing:.05em;margin-top:20px}.section-heading p{font-size:14px;line-height:2;margin-top:18px}.vision-layout{display:flex;flex-direction:column;padding:0;gap:35px}.vision-photo{width:92%;height:360px;margin-right:auto;border-radius:0 15px 15px 0}.vision-copy{padding:0 24px;width:100%}.vision-copy h3{font-size:27px;line-height:1.6;margin:22px 0}.vision-copy p{font-size:14px;line-height:2.2;letter-spacing:.06em}.pill-link{max-width:320px;padding:9px 20px;font-size:14px;margin-top:30px}.venture-definition{display:block;margin:45px 24px 0;padding-top:20px}.venture-definition span{font-size:12px}.venture-definition p{margin-top:8px;font-size:13px;line-height:2}.mobile-break{display:block}.ability{padding-top:0}.classroom-photo{width:92%;height:300px;margin-bottom:40px;border-radius:15px 0 0 15px}.ability-inner{margin:0 24px}.ability .section-heading{margin-left:0;margin-right:0}.ability-list{display:flex;flex-direction:column;gap:18px}.ability-list article{padding:27px 25px}.ability-list h3{font-size:21px;margin-bottom:12px}.ability-list p{font-size:14px}.system,.journey{padding-left:24px;padding-right:24px}.system-layout{grid-template-columns:1fr;gap:40px}.wheel{max-width:410px}.wheel-center strong{font-size:23px}.wheel-center span{font-size:10px}.wheel-center small{font-size:11px}.wheel-label strong{font-size:21px}.wheel-label small{font-size:12px}.wheel-arrow{font-size:29px}.p-list h3{font-size:19px}.p-list p{font-size:13px}.journey-stage{display:flex;flex-direction:column;gap:24px}.phase{font-size:14px}.stage-title h3{font-size:24px;margin:15px 0}.stage-title p{font-size:14px}.cycle{padding:20px 12px 15px;grid-template-columns:1fr 25px 1fr}.cycle-node{padding:18px 4px}.cycle-node h4{font-size:14px}.cycle-node p{font-size:10px;line-height:1.8}.playbook-bar{font-size:12px;padding:13px 12px}.stage-note{font-size:11px;margin:0 8px 20px}.continuation{margin:20px 0 30px}.continuation span{margin-left:18px;height:40px}.ongoing .stage-content{padding:0 18px}.ongoing-row{display:block;padding:22px 0}.cadence{margin-bottom:10px;font-size:13px;width:auto}.ongoing-row h4{font-size:16px}.ongoing-row p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-film button{z-index:2}
/* Immersive hero: copy sits over the continuously playing film. */
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:640px;height:calc(100svh - 120px);max-height:1000px;padding:70px clamp(32px,6vw,110px) 115px;background:#1d1a1a;text-align:left;overflow:hidden;color:#fff}
.hero .hero-film{position:absolute;inset:0;z-index:-1;max-width:none;margin:0;border-radius:0;aspect-ratio:auto}
.hero .hero-film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,13,11,.69) 0%,rgba(15,13,11,.39) 46%,rgba(15,13,11,.08) 100%);pointer-events:none;transition:opacity 1s ease}
.hero .hero-film button{z-index:3;right:32px;bottom:32px}
.hero-copy{max-width:760px;pointer-events:none;opacity:1;transition:opacity .7s ease}
.hero h1{font-size:clamp(46px,5.1vw,76px);font-weight:900;line-height:1.43;letter-spacing:.08em;color:#fff;text-shadow:0 2px 22px #0000001a}
.hero-description{margin-top:26px;font-size:clamp(16px,1.5vw,21px);letter-spacing:.12em;line-height:1.9}
.hero .hero-link{position:absolute;left:clamp(32px,6vw,110px);bottom:32px;justify-content:flex-start;gap:18px;margin:0;color:#fff;transition:opacity .7s ease}
@media(max-width:760px){
 .hero{min-height:560px;height:calc(100svh - 80px);max-height:900px;padding:52px 26px 110px}
 .hero h1{font-size:clamp(36px,8.5vw,58px);line-height:1.5;letter-spacing:.06em}
 .hero-description{font-size:15px;margin-top:24px;line-height:1.9;letter-spacing:.08em}
 .hero .hero-film::after{background:linear-gradient(90deg,rgba(15,13,11,.65),rgba(15,13,11,.22))}
 .hero .hero-link{left:26px;bottom:28px;font-size:12px;gap:12px}
 .hero .hero-film button{right:20px;bottom:28px}
}

/* Photo-free story: message, people, practice system, community rhythm. */
.intro{padding:110px 32px 90px;text-align:center;background:linear-gradient(to bottom,rgba(255,255,255,0) 38%,rgba(255,255,255,.18) 56%,rgba(255,255,255,.68) 79%,#fff 100%) center/100% 100% no-repeat,url('/emo/assets/emo-hero-bg.webp') center/cover no-repeat}
.intro-catch{font-size:clamp(30px,4vw,52px);font-weight:900;letter-spacing:.12em;line-height:1.6}
.intro-line{display:block;width:72px;height:6px;background:var(--gradient);border-radius:3px;margin:32px auto 0}
.intro-about{max-width:900px;margin:48px auto 0}
.intro-lead{font-size:22px;font-weight:700;line-height:1.9;letter-spacing:.06em}
.intro-lead-line{display:block}
.intro-story{margin-top:28px;font-size:16px;font-weight:500;line-height:2.2;letter-spacing:.04em}
.intro-story p+p{margin-top:5px}
.portrait{background:#fff;padding:95px 40px 120px}
.portrait-inner{max-width:1080px;margin:auto}
.portrait-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;margin:48px 0 56px}
.portrait-intro>h3{font-size:36px;font-weight:900;line-height:1.7;letter-spacing:.06em}
.portrait-description{font-size:15px;line-height:2.2;letter-spacing:.06em}
.portrait-description p+p{margin-top:22px}
.portrait .ability-list{gap:24px}
.portrait .venture-definition{max-width:none;margin:48px 0 0;font-size:13px}
.portrait .venture-definition p{font-size:13px;letter-spacing:.04em}
@media(max-width:1100px){.header nav{gap:20px}.header nav a{font-size:12px;letter-spacing:.07em}.portrait-intro{gap:40px}.portrait-intro>h3{font-size:30px}}
@media(max-width:760px){
 .intro{padding:68px 24px 60px}.intro-catch{font-size:29px;letter-spacing:.06em}.intro-line{margin-top:24px;width:54px;height:5px}
 .intro-about{max-width:560px;margin-top:34px;text-align:left}.intro-lead{font-size:18px;line-height:1.9;letter-spacing:.04em}.intro-lead-line{display:inline}.intro-story{margin-top:22px;font-size:15px;line-height:2.1;letter-spacing:.03em}.intro-story p+p{margin-top:12px}
 .portrait{padding:60px 24px 70px}.portrait-intro{grid-template-columns:1fr;gap:24px;margin:28px 0 34px}.portrait-intro>h3{font-size:27px}.portrait-description{font-size:14px}
 .portrait .ability-list{gap:18px}.portrait .venture-definition{margin-top:32px}.portrait .venture-definition p{margin-top:10px}
 .journey .section-title{font-size:25px;letter-spacing:.04em;align-items:flex-start}.journey .section-title::before{margin-top:8px}
}

/* A concise portrait, and small scenes that explain the community rhythm. */
.portrait-intro{display:block;margin:38px 0 44px}
.portrait-intro>h3{font-size:38px;line-height:1.6}
.portrait .ability-list article{padding:34px 24px;text-align:center}
.portrait .ability-list h3{margin:0;font-size:22px}
.schedule-illustration{width:144px;height:auto;margin:0 auto 16px}
.cycle-node{padding-top:20px}
.cadence{text-align:center;width:88px}
.cadence img{width:80px;height:auto;margin:0 auto 6px}
.ongoing-row{align-items:center}
@media(max-width:760px){
 .portrait-intro{margin:26px 0 30px}.portrait-intro>h3{font-size:27px}
 .portrait .ability-list article{padding:25px 18px}.portrait .ability-list h3{font-size:21px}
 .schedule-illustration{width:112px;max-width:100%;margin-bottom:12px}
 .ongoing-row{display:flex;gap:14px;align-items:flex-start}.cadence{width:66px;flex:none;font-size:11px}.cadence img{width:66px}
 .ongoing-row h4{font-size:14px}.ongoing-row p{font-size:11px}
}

/* Centered portrait heading and three equal illustration/text columns. */
.portrait{text-align:center}
.portrait .section-title{justify-content:center}
.portrait-intro{margin:30px 0 48px}
.portrait-intro>h3{font-size:clamp(25px,3vw,38px);letter-spacing:.04em;white-space:nowrap}
.portrait .ability-list article{padding:30px 20px 34px}
.portrait-illustration{width:180px;height:auto;margin:0 auto 22px}
.portrait .ability-list h3{font-size:23px}
.portrait .ability-list p{font-size:14px;line-height:2;letter-spacing:.04em;margin-top:18px}
@media(max-width:760px){
 .portrait-intro{margin:26px 0 32px}.portrait-intro>h3{font-size:clamp(16px,4.2vw,29px);letter-spacing:0}
 .portrait .ability-list article{padding:26px 20px 30px}.portrait-illustration{width:160px;margin-bottom:18px}
 .portrait .ability-list h3{font-size:22px}.portrait .ability-list p{font-size:14px;margin-top:14px}
}

/* Centered orange section labels with generous whitespace. */
.section .section-title{display:block;max-width:100%;margin:0 auto;padding:0;background:none;color:var(--orange);font-size:22px;font-weight:700;line-height:1.65;letter-spacing:.12em;text-align:center}
.section .section-title::before{content:none;display:none}
.section .section-heading{text-align:center}
.section .section-heading h3{margin-top:24px;font-size:36px;font-weight:900;line-height:1.6;color:var(--ink)}
.section .section-heading p{margin-top:20px}
.portrait-intro{margin-top:24px}
.system,.journey{background:#fff}
@media(max-width:760px){
 .section .section-title{font-size:18px;letter-spacing:.07em}
 .journey .section-title{font-size:17px;letter-spacing:.03em;text-wrap:balance}
 .section .section-heading h3{margin-top:20px;font-size:25px}
.portrait-intro{margin-top:20px}
}

/* An aspirational portrait, followed by three capabilities. */
.portrait-intro{margin:24px 0 64px}
.portrait-intro>h3{font-size:clamp(28px,3vw,40px);white-space:normal;letter-spacing:.04em;line-height:1.6}
.portrait-intro>h3 span{display:inline-block}
.portrait-story{max-width:800px;margin:28px auto 0;font-size:16px;font-weight:500;line-height:2.3;letter-spacing:.05em}
.portrait-invitation{margin-top:28px;font-size:19px;font-weight:700;line-height:2;letter-spacing:.06em}
.portrait .ability-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portrait .ability-list article{padding:30px 20px 32px}
.portrait .portrait-illustration{width:260px;max-width:100%;height:180px;object-fit:contain;margin:22px auto 20px}
.portrait .ability-list h4{color:var(--orange);font-size:28px;font-weight:900;line-height:1.5;letter-spacing:.03em}
.portrait .ability-list p{margin-top:18px;font-size:14px;font-weight:500;line-height:2;letter-spacing:.03em;text-align:left}
@media(max-width:1100px){
 .portrait .ability-list article{padding:30px 20px}
 .portrait .ability-list p{max-width:320px;margin-left:auto;margin-right:auto}
}
@media(max-width:900px){
 .portrait .ability-list{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}
}
@media(max-width:760px){
 .portrait-intro{margin:20px 0 40px}
 .portrait-intro>h3{font-size:clamp(24px,5.7vw,36px);letter-spacing:.02em}
 .portrait-story{max-width:560px;margin-top:24px;font-size:15px;line-height:2.1;letter-spacing:.03em;text-align:left}
 .portrait-story p+p{margin-top:10px}
 .portrait-invitation{font-size:16px;line-height:2;letter-spacing:.02em;text-wrap:balance}
 .portrait .ability-list{gap:18px}
 .portrait .ability-list article{padding:28px 20px}
 .portrait .portrait-illustration{width:260px;margin-bottom:20px}
 .portrait .ability-list h4{font-size:26px}
}
@media(max-width:560px){
 .portrait .ability-list{grid-template-columns:minmax(0,1fr)}
 .portrait .ability-list article{padding:28px}
 .portrait .ability-list h4{font-size:26px}
}

@media(max-width:900px){
 .system-layout{grid-template-columns:minmax(0,1fr);gap:44px;max-width:560px}
 .wheel-wrap,.fourp-wheel{max-width:480px}
}
@media(max-width:760px){
 .system .section-heading h3{font-size:clamp(24px,5.5vw,32px);letter-spacing:.03em}
 .wheel-wrap::before{inset:-6%;filter:blur(14px)}
 .p-name{font-size:32px}
 .p-list h4{gap:4px 14px}
 .p-role{font-size:13px}
 .p-list p{font-size:14px}
}

/* A personal invitation from the community lead. */
.community-lead{padding-left:32px;padding-right:32px;background:radial-gradient(ellipse at 10% 54%,#fff0e580 0%,#fff8f247 34%,#fff0 65%)}
.lead-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:80px;max-width:1080px;margin:58px auto 0;align-items:start}
.lead-photo{width:100%;border-radius:16px;aspect-ratio:683/720;object-fit:cover}
.lead-identity{margin-top:24px}
.lead-role{font-size:13px;line-height:1.7;letter-spacing:.08em;color:var(--orange)}
.lead-name{margin-top:5px;font-size:30px;font-weight:900;line-height:1.5;letter-spacing:.1em}
.lead-company{margin-top:6px;font-size:13px;line-height:1.8;letter-spacing:.03em}
.lead-bio{margin-top:22px;padding-top:20px;border-top:1px solid #eadfd8;font-size:12px;font-weight:500;line-height:2;letter-spacing:.035em;color:#625b58}
.lead-message{padding-top:8px}
.lead-message h3{font-size:36px;font-weight:900;line-height:1.65;letter-spacing:.035em}
.lead-message h3 span{display:block}
.lead-message-body{margin-top:32px;max-width:600px;font-size:16px;font-weight:500;line-height:2.2;letter-spacing:.045em}
.lead-message-body p+p{margin-top:24px}
@media(max-width:1100px){
 .lead-layout{grid-template-columns:300px minmax(0,1fr);gap:48px;max-width:940px}
 .lead-message h3{font-size:30px;letter-spacing:.02em}
}
@media(max-width:800px){
 .lead-layout{grid-template-columns:minmax(0,1fr);gap:38px;max-width:560px;margin-top:38px}
 .lead-profile{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;align-items:center}
 .lead-identity{margin-top:0}
 .lead-bio{grid-column:1/-1;margin-top:0}
 .lead-message{padding-top:0}
 .lead-message h3{font-size:29px}
}
@media(max-width:760px){
 .community-lead{padding-left:24px;padding-right:24px}
 .lead-profile{grid-template-columns:42% minmax(0,1fr);gap:20px}
 .lead-photo{border-radius:12px}
 .lead-name{font-size:25px;letter-spacing:.06em}
 .lead-role{font-size:12px}
 .lead-company{font-size:11px;letter-spacing:0}
 .lead-bio{font-size:12px;padding-top:18px}
 .lead-message h3{font-size:clamp(22px,5.8vw,29px);letter-spacing:.01em}
 .lead-message-body{margin-top:24px;font-size:15px;line-height:2.1;letter-spacing:.03em}
 .lead-message-body p+p{margin-top:20px}
}

/* Site-wide footer */
.site-footer {
  background: var(--ink);
  color: #fff;
  padding: clamp(40px, 5vw, 70px) clamp(24px, 4vw, 64px) 28px;
}
.site-footer-inner { max-width: 1320px; margin: 0 auto; }
.site-footer-main {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(0, 3fr);
  align-items: start;
  gap: 42px;
  padding-bottom: clamp(28px, 3vw, 44px);
}
.site-footer-logo { display: inline-flex; justify-self: start; }
.site-footer-logo img {
  display: block;
  width: clamp(190px, 21vw, 254px);
  height: auto;
  filter: brightness(0) invert(1);
}
.site-footer-sections {
  display: grid;
  grid-template-columns: 1fr 1.35fr 1fr;
  gap: 24px;
}
.site-footer-group h2 { margin-bottom: 12px; font-size: 17px; font-weight: 700; line-height: 1.6; }
.site-footer-group ul { list-style: none; padding: 0; margin: 0; }
.site-footer-group li { line-height: 1; }
.site-footer-sections a,
.site-footer-legal a { display: inline-block; padding: 6px 0; line-height: 1.6; }
.site-footer-sections a { color: #fff; font-size: 14px; font-weight: 500; letter-spacing: .035em; }
.site-footer-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px 36px;
  padding-top: 17px;
  border-top: 1px solid #514e4e;
}
.site-footer-legal { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 22px; }
.site-footer-legal a,
.site-footer-meta small { color: #e2dddd; font-size: 12px; font-weight: 500; letter-spacing: .025em; }
.site-footer-meta small { white-space: nowrap; }
.site-footer a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (hover: hover) {
  .site-footer-sections a:hover, .site-footer-legal a:hover { color: #ffc093; }
}
@media (max-width: 980px) {
  .site-footer-main { grid-template-columns: 1fr; gap: 30px; }
}
/* Hidden links must stay out of both the layout and keyboard navigation. */
.site-footer [hidden] { display: none; }
@media (max-width: 680px) {
  .site-footer { padding: 28px 24px max(22px, env(safe-area-inset-bottom)); }
  .site-footer-main { gap: 20px; padding-bottom: 18px; }
  .site-footer-logo img { width: 158px; }
  .site-footer-sections { grid-template-columns: 1fr; gap: 0; border-top: 1px solid #514e4e; }
  .site-footer-group { border-bottom: 1px solid #514e4e; }
  .site-footer-group h2 { margin: 0; font-size: 15px; }
  .site-footer-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    min-height: 52px;
    padding: 12px 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
  }
  .site-footer-toggle::after { content: ""; flex: 0 0 8px; width: 8px; height: 8px; margin-right: 4px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg) translateY(-2px); }
  .site-footer-toggle[aria-expanded="true"]::after { transform: rotate(225deg) translate(-2px, -1px); }
  .site-footer-toggle:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
  .site-footer-group ul { display: grid; gap: 0; padding-bottom: 12px; }
  .site-footer-sections a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; font-size: 13px; }
  .site-footer-meta { align-items: flex-start; flex-direction: column; gap: 12px; padding-top: 0; border-top: 0; }
  .site-footer-legal { gap: 0 14px; }
  .site-footer-legal a { display: inline-flex; align-items: center; min-height: 32px; padding-block: 5px; font-size: 11px; }
  .site-footer-meta small { font-size: 11px; }
}
