/* Readable reflow rather than hiding overflow: supports small webviews and zoom. */
@media(max-width:800px){
 .header #navigation,.header #navigation.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:22px;padding:28px 7% calc(28px + env(safe-area-inset-bottom,0px));font-size:16px;background:var(--surface);color:var(--text);border-bottom:1px solid var(--stroke);max-height:calc(100dvh - 100px);overflow-y:auto;transform-origin:top;clip-path:inset(0 0 100% 0);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:clip-path .48s cubic-bezier(.22,1,.36,1),transform .48s cubic-bezier(.22,1,.36,1),opacity .26s ease,visibility 0s .48s}
 .header #navigation.open{clip-path:inset(0);opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
 .header #navigation a{opacity:0;transform:translateY(-14px);transition:opacity .18s ease,transform .24s ease}
 .header #navigation.open a{opacity:1;transform:translateY(0);transition:opacity .38s ease,transform .5s cubic-bezier(.22,1,.36,1);transition-delay:calc(70ms + var(--menu-order,0)*55ms)}
 .header #navigation a:nth-child(2){--menu-order:1}.header #navigation a:nth-child(3){--menu-order:2}.header #navigation a:nth-child(4){--menu-order:3}
}
@media(prefers-reduced-motion:reduce){.header #navigation,.header #navigation a{transition:none!important}}
.belief-copy{opacity:1;transform:none;overflow:clip;overflow-clip-margin:12px}
@media(prefers-reduced-motion:reduce){.belief-copy :is(.eyebrow,h3,.belief-description,.manifesto-line){opacity:1!important;transform:none!important;filter:none!important}}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(24px + env(safe-area-inset-top,0px))}
body{overflow-wrap:break-word}
main,section,article,figure,header,footer,nav,.story-grid>*,.founder-grid>*,.belief-scene>*,.header-actions{min-width:0}
p,h1,h2,h3,li,button,a,label,legend{overflow-wrap:anywhere}
html[lang="ko"] :is(p,h1,h2,h3,li,label,legend){word-break:keep-all;overflow-wrap:anywhere}
.motion-word{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.header{padding-left:max(4.2%,env(safe-area-inset-left,0px));padding-right:max(4.2%,env(safe-area-inset-right,0px))}
.section-pad,footer{padding-left:max(7%,env(safe-area-inset-left,0px));padding-right:max(7%,env(safe-area-inset-right,0px))}
footer{padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))}
.application-dialog,.reading-dialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);overflow-y:auto;max-width:calc(100vw - 24px);margin:auto;scrollbar-gutter:stable}
.form-panel{padding-bottom:calc(35px + env(safe-area-inset-bottom,0px))}.form-grid select{max-width:100%}
.story-image-caption p,.belief-copy h3{overflow-wrap:anywhere}
@media(max-width:800px){
 .header{height:auto;min-height:80px;padding-top:calc(15px + env(safe-area-inset-top,0px));padding-bottom:15px;flex-wrap:wrap;row-gap:10px}
 .header nav.open{top:100%;max-height:calc(100dvh - 100px);overflow-y:auto;padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))}
 .hero{height:auto;min-height:100vh;min-height:100svh;max-height:none}
 .hero-stage{height:auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding-top:clamp(300px,49svh,500px);position:relative}
 .hero-photo img{height:100%;object-position:65% top}.hero-content{position:relative;inset:auto;width:auto;margin:0 7%;padding:24px 0 25px}
 .hero h1{font-size:clamp(36px,8.8vw,68px);line-height:1.1;letter-spacing:-.045em}
 .hero-description{max-width:36em;font-size:14px;line-height:1.8}.hero-eyebrow{font-size:8px;letter-spacing:.12em;flex-wrap:wrap;gap:8px;margin-bottom:18px}
 .hero-link{gap:16px;max-width:100%}.circle-arrow{flex-shrink:0}
 .hero-bottom{position:relative;inset:auto;flex-wrap:wrap;margin:0 7%;gap:15px;padding:5px 0 calc(24px + env(safe-area-inset-bottom,0px));font-size:7px}
 .hero-bottom>p,.hero-bottom .scroll-link{font-size:7px}.hero-caption{display:none}
 .display,.story .display,.invitation .display,html[lang="ko"] .display{font-size:clamp(30px,7.4vw,54px);line-height:1.2;letter-spacing:-.045em}
 .founder-copy h2,html[lang="ko"] .founder-copy h2,.belief-copy h3{font-size:clamp(27px,6.8vw,40px);line-height:1.25}
 .belief-intro h2{font-size:clamp(29px,7vw,48px);line-height:1.25}
 .display br,.founder-copy h2 br,.belief-copy h3 br,.belief-intro h2 br{display:none}
 .portal-type{inset:auto 0;top:50%;transform:translateY(-50%);padding:36px max(6%,env(safe-area-inset-left,0px));height:auto}
 .portal-type:before{height:100%;max-height:none}.portal-type h2{font-size:clamp(27px,6.4vw,48px);line-height:1.25;max-width:100%;margin:20px 0}.portal-caption{max-width:100%;font-size:12px}
 .story-baseline{flex-wrap:wrap;row-gap:12px}.story-baseline i{margin-left:5px}.experience-row{gap:12px}.row-title{font-size:clamp(19px,4.7vw,30px);line-height:1.3}.row-number,.row-arrow{flex-shrink:0}
 .invitation-bottom,.big-cta{min-width:0;width:100%}.big-cta{gap:15px}.big-cta>span:last-child{flex-shrink:0}
 .membership-card h3{font-size:clamp(30px,8vw,43px)}.membership-card>p,.membership-card ul{min-height:0}
 .form-grid input,.form-grid select,.form-grid textarea{font-size:16px}.form-actions{gap:12px;flex-wrap:wrap}.application-shell{min-height:0}.application-shell aside h2{font-size:clamp(24px,6vw,32px);padding-right:32px;line-height:1.3}.dialog-close{right:10px;top:12px}
 .reading-dialog h2{font-size:clamp(27px,7vw,38px)}.reading-body{overflow-wrap:anywhere}
}
@media(max-width:540px){
 .story-window{aspect-ratio:auto;overflow:visible;clip-path:none;background:var(--surface)}.story-window>img{height:auto;aspect-ratio:1.1;object-fit:cover;transform:none}.story-image-shade{display:none}.story-image-caption{position:relative;inset:auto;padding:24px 0 0;color:var(--text)}.story-image-caption .eyebrow{color:var(--secondary);font-size:7px}.story-image-caption p{font-size:clamp(22px,6vw,29px);line-height:1.4}.story-image-caption p br{display:none}
 .story-visual figcaption{flex-wrap:wrap}.story-visual figcaption span:last-child{text-align:left}
 .form-panel{padding-inline:20px}.membership-card{padding:24px 20px}.founder-image{height:auto;aspect-ratio:.85}.founder-image img{position:absolute;inset:0}
 .footer-top,.footer-bottom{flex-wrap:wrap}.header-actions{gap:7px}.theme-switch button{width:26px;min-height:32px}.lang{min-width:35px}
}
@media(max-width:359px){.header .brand>span:not(.logo-mark){font-size:10px}.header .brand{gap:3px}.header .brand img{width:25px;height:25px}.header-actions{gap:5px}.theme-switch{padding:2px}.theme-switch button{width:23px}.hero h1{font-size:clamp(32px,10vw,36px)}}
@media(max-height:500px) and (max-width:950px){.hero-stage{padding-top:220px}.portal-sticky{min-height:440px}.portal-type{padding-block:24px}.portal-type h2{font-size:32px}.application-dialog,.reading-dialog{max-height:calc(100dvh - 12px)}}
/* The wide founder portrait keeps both hands visible and blends into either theme. */
.founder-image.founder-image-v2{height:auto;aspect-ratio:4/3;background:var(--surface);align-self:center}
.founder-image.founder-image-v2 img{position:relative;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
