/* Homepage alignment and readable mobile typography. */
body[data-page='/']{--home-gutter:clamp(20px,5vw,88px)}
body[data-page='/'] :is(.header,.shell){max-width:1440px}
body[data-page='/'] .header{left:var(--home-gutter);right:var(--home-gutter);margin-inline:auto}
body[data-page='/'] .shell{width:calc(100% - var(--home-gutter)*2)}
body[data-page='/'] .header-login svg{width:14px;height:14px;flex:none}
body[data-page='/'] .menu-bottom>a{display:inline-flex;align-items:center;gap:12px}
body[data-page='/'] .menu-bottom svg{width:18px;height:18px}
body[data-page='/'] .page-index{display:none}
.v-home{--v-pad:var(--home-gutter)}
.v-home :is(h1,h2,h3,p){overflow-wrap:break-word}
.v-home :is(.v-hero-grid,.v-learning-heading,.v-course,.v-event-bottom,.v-club)>*{min-width:0}
.v-home>section{padding-block:clamp(64px,7vw,110px)}
.v-home .v-opening{min-height:0;padding-top:128px;padding-bottom:36px}
.v-home .v-hero-grid{gap:clamp(28px,4vw,64px);padding-block:44px;max-width:1440px;margin-inline:auto}
.v-home .v-hero-type h1>span:first-child{font-size:clamp(36px,4.5vw,70px);margin-bottom:22px}
.v-home .v-hero-type h1>strong{font-size:clamp(130px,17vw,260px);line-height:.88}
.v-home .v-hero-intro{flex-direction:column;align-items:flex-start;gap:24px;margin-top:30px}
.v-home .v-hero-intro>p{font-size:17px;max-width:360px;line-height:1.65}
.v-home .b-button{font-size:13px;gap:22px;line-height:1.4;max-width:100%;text-align:left}
.v-home .b-button svg{flex:none}
.v-home .v-human-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;height:auto;aspect-ratio:auto;max-width:590px;width:100%;justify-self:end;overflow:visible;transform:none;perspective:none}
.v-home .v-speaker-flight{position:static;display:block;width:100%;max-width:none;aspect-ratio:auto;transform:none;animation:none}
.v-home .v-person{height:100%;padding:0;transform:none;transition:none;box-shadow:none;border:1px solid #ffffff24;background:#1b2635;color:#edf3fc;overflow:hidden;border-radius:8px}
.v-home .v-person>div{flex:none;aspect-ratio:4/5;min-height:0}
.v-home .v-person img{display:block;width:100%;height:100%;object-fit:cover}
.v-home .v-person>span{padding:12px 10px;min-height:66px}
.v-home .v-person strong{font:600 13px/1.35 Body,Arial,sans-serif;letter-spacing:0}
.v-home .v-person small{font:10px/1.5 Body,Arial,sans-serif;color:#b9c5d6;margin-top:4px}
.v-home .v-hero-bottom{gap:24px;grid-template-columns:1fr auto 48px}
.v-home .v-hero-bottom>p{font-size:14px;max-width:560px}
.v-home .v-explore{grid-template-columns:repeat(4,minmax(0,1fr));padding-inline:var(--v-pad)}
.v-home .v-portal{min-height:138px;padding:25px 22px;border-bottom:0;gap:24px}
.v-home .v-portal:last-child{border-right:0}
.v-home .v-portal>strong{font-size:24px;max-width:210px;line-height:1.2}
.v-home .v-portal>svg{width:20px;height:20px;top:23px;right:20px}
.v-home .v-chapter{margin-bottom:40px}
.v-home .b-label{font-size:11px;line-height:1.5}
.v-home .v-live-word{transform:none;box-shadow:none;border:0;padding:.03em .12em}
.v-home .v-live-word:before{display:none}
.v-home .v-course{grid-template-columns:110px minmax(0,1fr) auto;gap:28px}
.v-home .v-course-mark{font-size:78px}
.v-home .v-course>div>p{font-size:16px;line-height:1.7}
.v-home .v-course h3{font-size:clamp(28px,2.7vw,40px);line-height:1.15}
.v-home .v-faculty-person>p{font-size:12px}
.v-home .v-play>span{font-size:13px;line-height:1.5}
.v-home .v-play small{font-size:11px;line-height:1.5}
.v-home .v-event-bottom{gap:30px}
.v-home .v-event-bottom>p{font-size:16px;line-height:1.65;max-width:340px}
.v-home .v-event-bottom dt{font-size:11px}
.v-home .v-event-bottom dd{font-size:14px;line-height:1.5}
.v-home .v-club{padding:0}
.v-home .v-club-content>p{font-size:16px;line-height:1.75}
.v-home .v-club-content>ul>li{font-size:15px;line-height:1.6}
.v-home .v-club-content>small{font-size:12px;line-height:1.7}
body[data-page='/'] .ai-work-entry{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px 60px;align-items:start;padding-block:clamp(64px,7vw,110px)}
body[data-page='/'] .ai-work-entry>.eyebrow{grid-column:1/-1;margin:0;color:#bfd9ff;font-size:11px}
body[data-page='/'] .ai-work-entry>h2{grid-row:span 2;font:500 clamp(34px,4.4vw,68px)/1.12 Body,Arial,sans-serif;letter-spacing:-.04em;margin:0}
body[data-page='/'] .ai-work-entry>h2 em{color:#bfd9ff}
body[data-page='/'] .ai-work-entry>p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:430px;margin:0;color:#bfc4cb}
body[data-page='/'] .ai-work-entry>.button{justify-self:start;font-size:13px;max-width:100%;gap:20px}
body[data-page='/'] .questions{border-top:1px solid #ffffff24;padding-block:64px}
body[data-page='/'] .footer-links a{font-size:14px;line-height:1.55}
body[data-page='/'] .footer-links h3{font-size:11px}
body[data-page='/'] .footer-bottom :is(p,a,button){font-size:12px}
body[data-page='/'] section[id]{scroll-margin-top:28px}
@media(min-width:1800px){.v-home>section{padding-inline:max(var(--v-pad),calc((100vw - 1440px)/2))}}
@media(max-width:1000px){
 .v-home .v-human-stage{gap:10px}
 .v-home .v-person>span{padding:10px 8px;min-height:75px}
 .v-home .v-person strong{font-size:12px}
 .v-home .v-person small{font-size:10px}
 .v-home .v-explore{padding-inline:0}
 .v-home .v-portal>strong{font-size:21px}
 .v-home .v-course{grid-template-columns:90px minmax(0,1fr)}
 .v-home .v-course>.b-button{grid-column:2;justify-self:start}
 .v-home .v-club-join{align-items:flex-start}
}
@media(max-width:760px){
 .v-home .v-opening{padding-top:100px;padding-bottom:28px}
 .v-home .v-hero-grid{grid-template-columns:1fr;padding-block:28px;gap:32px}
 .v-home .v-hero-type h1>span:first-child{font-size:clamp(30px,8.5vw,58px);margin-bottom:16px}
 .v-home .v-hero-type h1>strong{font-size:clamp(120px,39vw,240px)}
 .v-home .v-hero-intro{margin-top:24px;gap:20px}
 .v-home .v-hero-intro>p{font-size:16px;max-width:390px}
 .v-home .v-hero-intro .b-button{font-size:13px;min-height:50px;padding:15px 20px;width:auto}
 .v-home .v-human-stage{margin:0;max-width:520px;justify-self:center;gap:10px}
 .v-home .v-person>div{aspect-ratio:1}
 .v-home .v-person>span{min-height:70px;padding:10px 7px}
 .v-home .v-person strong{font-size:12px}
 .v-home .v-person small{font-size:10px}
 .v-home .v-hero-bottom{grid-template-columns:1fr;gap:14px}
 .v-home .v-hero-bottom>p{font-size:14px;max-width:440px}
 .v-home .v-hero-bottom>.b-text{font-size:13px;justify-self:start}
 .v-home .v-explore{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v-home .v-portal{min-height:112px;padding:22px 20px;gap:18px;border-bottom:1px solid #10172230}
 .v-home .v-portal:nth-child(even){border-right:0}
 .v-home .v-portal:nth-last-child(-n+2){border-bottom:0}
 .v-home .v-portal>strong{font-size:20px;max-width:none}
 .v-home .v-portal>svg{width:18px;height:18px}
 .v-home .v-learning-heading>div{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
 .v-home .v-learning-heading>div>p{font-size:16px;max-width:400px}
 .v-home .v-play>span{font-size:13px;max-width:none}
 .v-home .v-play small{font-size:11px}
 .v-home .v-course{grid-template-columns:1fr;gap:20px}
 .v-home .v-course-mark{display:none}
 .v-home .v-course>.b-button{grid-column:1;justify-self:stretch}
 .v-home .v-course>div>p{font-size:16px}
 .v-home .v-course h3{font-size:32px;line-height:1.15}
 .v-home .v-event-intro>p{font-size:16px;max-width:380px}
 .v-home .v-event-date{top:auto;bottom:24px;right:20px}
 .v-home .v-event-date strong{font-size:48px}
 .v-home .v-event-date span{font-size:10px}
 .v-home .v-event-circle{bottom:75px}
 .v-home .v-club h2{font-size:clamp(38px,10vw,60px)}
 .v-home .v-club-join{flex-direction:column;align-items:flex-start;gap:22px}
 .v-home .v-club-join .b-button{font-size:13px;flex:auto;width:100%}
 .v-home .v-club-join>span{font-size:13px;display:flex;gap:8px;align-items:baseline}
 body[data-page='/'] .ai-work-entry{grid-template-columns:1fr;gap:22px}
 body[data-page='/'] .ai-work-entry>h2{grid-row:auto;font-size:clamp(32px,8.5vw,52px)}
 body[data-page='/'] .ai-work-entry>p:not(.eyebrow){font-size:16px}
 body[data-page='/'] .ai-work-entry>.button{justify-self:stretch;white-space:normal}
 body[data-page='/'] .questions .section-heading h2{font-size:42px}
 body[data-page='/'] .footer-links{gap:30px 24px}
}
@media(max-width:360px){.v-home .v-human-stage{grid-template-columns:repeat(2,minmax(0,1fr))}.v-home .v-person>span{min-height:60px}.v-home .v-portal>strong{font-size:18px}}
