/* Portrait composition and continuously readable name. */
.deck-enabled .hero.motion-hero{background:#e5e8ef;isolation:isolate}
.hero-portrait{position:absolute;z-index:1;left:50%;bottom:0;transform:translateX(-50%);height:100%;width:min(75%,1000px);object-fit:cover;object-position:center 28%;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}
.deck-enabled .hero.motion-hero .hero-name{position:absolute;top:auto;left:0;bottom:70px;width:100%;transform:none;margin:0;overflow:hidden;z-index:2;color:#fff;mix-blend-mode:difference;font-size:clamp(85px,15vw,235px);line-height:1.12;letter-spacing:-.035em;animation:none;pointer-events:auto}
.name-track{display:flex;width:max-content;animation:roll-name 22s linear infinite;will-change:transform}
.name-track>span{display:block;flex-shrink:0;white-space:nowrap;padding-right:.2em}.name-track i{font-family:Arial,sans-serif;font-style:normal;font-size:.6em;vertical-align:middle;margin-inline:.12em}
.motion-hero:focus-within .name-track{animation-play-state:paused}
.deck-enabled .hero-topline{z-index:3;top:112px;font-size:12px;max-width:none}.deck-enabled .hero-topline>p{max-width:240px}.deck-enabled .hero-topline>p:last-child{max-width:150px;text-align:right;font-size:8px}
.deck-enabled .hero-bottom{z-index:3;bottom:23px}.deck-enabled .hero-bottom>p,.deck-enabled .hero-bottom>a{background:#e5e8efe6;padding:7px 10px;border-radius:5px}.deck-enabled .hero-bottom>a{flex-direction:row;gap:16px}.deck-enabled .hero-bottom>a>span:last-child{font-size:27px;line-height:1}.deck-enabled .hero-bottom>a>.t{font-size:10px}
.hero-orbit{z-index:0}.deck-enabled .deck-card{touch-action:pan-y pinch-zoom}.deck-enabled .wrap{width:100%;min-width:0}.deck-enabled p,.deck-enabled dd{overflow-wrap:break-word}
.deck-enabled .site-header__inner{gap:16px}.deck-enabled .site-header nav{gap:20px}.deck-enabled .site-header nav a:after{margin-left:20px}
.deck-tabs button{min-height:44px}.deck-prev,.deck-next{min-width:44px;min-height:44px}.deck-controls button:focus-visible{outline:2px solid #111;outline-offset:3px}
/* Avoid narrow columns on tablets and retain comfortable touch targets. */
@media(max-width:1000px){.deck-enabled .site-header__name>span:last-child{display:none}.deck-enabled .site-header nav{gap:18px}.deck-enabled .site-header nav a:after{margin-left:18px}.hero-portrait{width:85%;object-position:center 24%}.deck-enabled .hero.motion-hero .hero-name{font-size:18vw}.deck-enabled .about-section .prose,.deck-enabled .experience-section .wrap{grid-template-columns:.65fr 1.35fr;column-gap:30px}.deck-enabled .sample h3{margin-right:0}.deck-enabled .project-preview{right:12px;width:240px}.deck-enabled .creds{grid-template-columns:130px 1fr;gap:16px 25px}}
@media(max-width:760px){.deck-enabled .site-header nav{gap:15px}.deck-enabled .site-header nav a:after{display:none}.deck-enabled .site-header nav a{font-size:9px}.deck-enabled .site-header .hire-link{font-size:9px;padding:9px 12px}.deck-enabled .deck-controls{gap:12px}.deck-tabs{gap:13px}.deck-tabs button{font-size:8px}.deck-enabled .about-section .prose,.deck-enabled .experience-section .wrap{display:block}.deck-enabled .about-arrow{display:none}.deck-enabled .about-section h2{font-size:15vw;margin-bottom:25px}.deck-enabled .about-section .prose>p:not(.section-index){margin-bottom:20px;font-size:14px}.deck-enabled .about-section .prose>p:nth-child(4){font-size:22px}.deck-enabled .experience-section h2{font-size:54px;margin-bottom:25px}.deck-enabled .org+.org{margin-top:32px}}
@media(max-width:600px){.deck-enabled main{inset:max(10px,env(safe-area-inset-top)) 10px calc(82px + env(safe-area-inset-bottom))}.deck-enabled .site-header{top:calc(max(10px,env(safe-area-inset-top)) + 12px);left:22px;right:22px}.deck-enabled .site-header__inner{gap:10px;min-height:52px}.deck-enabled .site-header nav{gap:15px}.deck-enabled .site-header nav a{font-size:9px}.deck-enabled .site-header .hire-link{display:none}.deck-enabled .lang-toggle button{min-height:40px;min-width:30px;padding:5px}.deck-enabled .lang-toggle__sep{display:none}.deck-enabled .hero-topline{top:90px;left:18px;right:18px;gap:25px;font-size:10px}.deck-enabled .hero-topline>p:first-child{max-width:175px}.deck-enabled .hero-topline>p:last-child{font-size:7px;max-width:105px;flex-shrink:0}.hero-portrait{width:100%;height:calc(100% - 112px);bottom:0;object-fit:cover;object-position:center 10%;mask-image:linear-gradient(to bottom,transparent,#000 9%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 9%)}.deck-enabled .hero.motion-hero .hero-name{bottom:88px;font-size:25vw;line-height:1.15}.name-track{animation-duration:18s}.deck-enabled .hero-bottom{left:14px;right:14px;bottom:15px;gap:12px;font-size:9px}.deck-enabled .hero-bottom>p{max-width:140px}.deck-enabled .hero-bottom>a{gap:8px;padding:9px}.deck-enabled .hero-bottom>a>.t{font-size:8px}.deck-enabled .hero-bottom>a>span:last-child{font-size:24px}.deck-controls{bottom:calc(12px + env(safe-area-inset-bottom));left:18px;right:18px;gap:10px}.deck-tabs{gap:0;justify-content:center}.deck-tabs button{font-size:0;border:0;border-radius:0;width:22px;height:44px;min-width:22px;min-height:44px;position:relative;background:transparent!important}.deck-tabs button:before{content:'';position:absolute;top:18px;left:7px;width:8px;height:8px;border:1px solid #555;border-radius:50%;background:transparent}.deck-tabs button[aria-current="step"]:before{background:#111;border-color:#111}.deck-count{font-size:9px;letter-spacing:0}.deck-prev,.deck-next{width:44px;height:44px}.deck-enabled .section{padding:95px 0 32px}.deck-enabled .wrap{padding-inline:22px}.deck-enabled .work-section h2{font-size:clamp(23px,6.5vw,34px)}.deck-enabled .sample{padding-left:25px}.deck-enabled .sample h3{font-size:clamp(27px,7.3vw,35px);line-height:1.2}.deck-enabled .sample__problem,.deck-enabled .sample__did,.deck-enabled .sample__outcome{font-size:13px;line-height:1.75}.deck-enabled .sample__link{min-height:44px;font-size:12px}.deck-enabled .sample:has(details[open]){padding-left:0}.deck-enabled .sample:has(details[open]) .project-number{display:none}.deck-enabled .body{padding:18px 14px;font-size:13px}.deck-enabled .body .pair{grid-template-columns:1fr}.deck-enabled .levels,.deck-enabled .glosses{grid-template-columns:1fr;gap:5px}.deck-enabled .glosses dd{margin-bottom:10px}.deck-enabled .creds{display:block;font-size:14px}.deck-enabled .creds dd{margin-bottom:22px}.deck-enabled .section[aria-labelledby="lang-title"] h2{font-size:clamp(33px,9vw,45px);line-height:1.2}.deck-enabled .role__title{font-size:14px}.deck-enabled .role>p:last-child{font-size:13px}.deck-enabled .site-footer{padding-top:100px}.deck-enabled .footer-top h2{font-size:clamp(25px,7vw,34px)}.deck-enabled .footer-top .hire-link{min-height:44px;font-size:10px;margin-left:0}.deck-enabled .footer-top{column-gap:12px;row-gap:15px}.deck-enabled .footer-arrow{font-size:55px}.deck-enabled .footer-email{font-size:14px;min-height:44px;display:inline-flex;align-items:center;margin:20px 0}.deck-enabled .footer-bottom a{min-height:44px;display:inline-flex;align-items:center;font-size:9px}.deck-enabled .footer-bottom{font-size:8px;gap:12px}}
@media(max-width:360px){.deck-controls{left:13px;right:13px;gap:6px}.deck-tabs button{min-width:19px;width:19px}.deck-tabs button:before{left:5px}.deck-count{font-size:8px}.deck-enabled .site-header nav{gap:10px}.deck-enabled .hero-topline{gap:12px;font-size:9px}.deck-enabled .hero-topline>p:last-child{max-width:90px;font-size:6px}.deck-enabled .hero-bottom>a>.t{font-size:7px}}
/* Short laptops and landscape phones need their own vertical composition. */
@media(min-width:601px) and (max-height:720px){.deck-enabled .hero-topline{top:100px;font-size:10px}.deck-enabled .hero-topline>p:last-child{font-size:7px}.deck-enabled .hero.motion-hero .hero-name{bottom:63px;font-size:13vw}.hero-portrait{width:65%;object-position:center 35%}.deck-enabled .section,.deck-enabled .site-footer{padding-top:105px}.deck-enabled .about-section h2{font-size:100px}}
@media(max-height:500px) and (min-width:601px){.deck-enabled main{inset:8px 8px 62px}.deck-enabled .site-header{top:18px;left:20px;right:20px}.deck-enabled .site-header__inner{min-height:44px}.deck-controls{bottom:7px;min-height:44px;left:20px;right:20px}.deck-enabled .hero-topline{top:70px;left:25px;right:25px}.deck-enabled .hero-bottom{bottom:10px;left:25px;right:25px;font-size:8px}.deck-enabled .hero-bottom>a>.t{font-size:8px}.deck-enabled .hero.motion-hero .hero-name{bottom:45px;font-size:13vw}.hero-portrait{width:52%;object-position:center 30%}.deck-enabled .section,.deck-enabled .site-footer{padding-top:80px}.deck-enabled .hero-bottom>a{padding:3px 7px}.deck-enabled .hero-bottom>a>span:last-child{font-size:20px}}
@keyframes roll-name{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.name-track{animation:none;width:100%;display:block}.name-track>span:first-child{font-size:clamp(30px,10vw,130px);width:100%;text-align:center;padding:0}.name-track>span:nth-child(2),.name-track i{display:none}.deck-enabled .hero.motion-hero .hero-name{font-size:inherit}}
@media print{.hero-portrait{position:static;height:200px;width:auto;transform:none;mask-image:none}.name-track{animation:none}.name-track>span:nth-child(2){display:none}.deck-enabled .hero.motion-hero .hero-name{position:static;color:#111;mix-blend-mode:normal;font-size:50px}.deck-enabled main{position:static}}
@media(min-width:1001px){.hero-portrait{height:calc(100% - 65px);width:auto;max-width:78%;object-fit:contain}}
@media(min-width:601px) and (max-height:720px){.hero-portrait{height:calc(100% - 55px);width:auto;max-width:75%;object-fit:contain;object-position:center bottom}}
@media(min-width:601px) and (max-height:500px){.deck-enabled .hero.motion-hero .hero-name{bottom:40px;font-size:10vw}}
