/* Portrait-led About layout. Photo slots retain an intentional composition until supplied. */
.about-composition{background:#fff}
.about-composition .ref-shell{width:min(1160px,calc(100% - 96px))}
.about-hero{display:block;min-height:0;text-align:left;padding:145px 0 72px}
.about-intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}
.about-eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:32px}
.about-hero h1{font-size:clamp(60px,6.9vw,98px);line-height:1;letter-spacing:-.065em}
.about-hero__intro{font-size:18px;line-height:1.6;letter-spacing:0;max-width:440px;margin:28px 0;color:#656560}
.about-intro-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.about-intro-actions a{display:flex;align-items:center;gap:24px;padding:15px 20px;border:1px solid #ddd;border-radius:12px;font-size:14px;transition:background .25s,color .25s}
.about-intro-actions a:first-child{background:#1b1b1b;color:white;border-color:#1b1b1b}
.about-intro-actions a:hover{background:#ff4b23;color:white;border-color:#ff4b23}
.about-location{display:flex;align-items:center;gap:8px;margin:40px 0 0;font:9px/1.5 'DM Mono',monospace;color:#777}
.about-location i{width:6px;height:6px;background:#ff4b23;border-radius:50%}.about-location span{margin-left:auto}
.about-portrait{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:24px;background:#e8e5df;margin:0;isolation:isolate}
.portrait-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:radial-gradient(ellipse at 70% 25%,#f5f2e9,transparent 65%),#dedbd2;color:#34342e}
.portrait-placeholder>span{font:9px/1.5 'DM Mono',monospace;letter-spacing:.1em}
.portrait-placeholder b{position:absolute;inset:15% 0 auto;text-align:center;font-size:clamp(170px,27vw,360px);font-weight:500;letter-spacing:-.1em;line-height:1;color:#c5c0b3}
.portrait-placeholder small{margin-top:auto;margin-bottom:90px;font-size:14px}
.about-portrait figcaption{position:absolute;z-index:3;bottom:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid #ffffff60;border-radius:14px;background:#ffffffd9;backdrop-filter:blur(12px);font-size:15px;line-height:1.4;color:#222}
.about-portrait figcaption i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ff4b23;color:#fff;font-style:normal;font-size:25px}
.about-portrait .about-photo-image{object-position:center 35%;transform:none}.about-portrait.has-photo .portrait-placeholder{display:none}
.about-composition>.about-mosaic{display:block;height:auto;margin-top:0;padding:0 0 100px}
.about-mosaic__rail{width:min(1160px,calc(100% - 96px));margin:auto;transform:none;padding:0;grid-template-columns:1fr 1.25fr .85fr;gap:16px}
.about-mosaic__rail>*{min-height:280px;border-radius:20px;margin:0}
.about-now,.about-note{padding:28px;display:flex;flex-direction:column;background:#f4f4f1}
.about-now small,.about-note small{font:10px 'DM Mono',monospace;letter-spacing:.05em;color:#74746e}
.about-now h2{font-size:30px;line-height:1.15;letter-spacing:-.04em;margin:30px 0 24px;font-weight:500}.about-now p{font-size:15px;line-height:1.6;color:#6b6b65}.about-now strong{color:#222;font-weight:500}.about-now>span{font:10px 'DM Mono',monospace;margin-top:auto;padding-top:20px;color:#666}
.about-note{background:#ffda26}.about-note>span{font-size:50px;line-height:1;margin:24px 0}.about-note p{font-size:25px;line-height:1.25;letter-spacing:-.03em;margin-top:auto}
.about-mosaic .about-photo-placeholder{background:#e7e5df;color:#30302b}.about-mosaic .about-photo-placeholder:after{display:none}.about-mosaic .about-photo-placeholder b{bottom:60px;font-size:38px;line-height:1.05;letter-spacing:-.04em}.about-mosaic .about-tile figcaption{font-size:9px;bottom:24px}
.about-story{padding-bottom:80px}.about-story h2,.about-belief h2,.about-values h2,.about-journey h2{font-size:clamp(40px,4.8vw,66px);line-height:1.05;letter-spacing:-.055em}
.about-story__grid{grid-template-columns:24% 1fr;gap:36px}.about-story__copy{margin-top:32px;line-height:1.7}.about-story__copy .about-lead{font-size:24px;line-height:1.4}
.about-anchors{padding-bottom:85px}.about-anchors strong{font-size:clamp(48px,6vw,80px);letter-spacing:-.06em}.about-anchors article{padding:32px!important}.about-anchors p{line-height:1.7}
.about-belief{padding:80px 0}.about-belief__grid{margin-top:36px;grid-template-columns:1.3fr 1fr;gap:60px}.about-orbit{display:none}.about-belief__grid>p{font-size:17px;line-height:1.7}
.about-values{padding:90px 0}.about-values__grid{gap:16px;border:0;margin-top:48px;grid-template-columns:repeat(2,1fr)}.about-values__grid article,.about-values__grid article+article{padding:28px;border:1px solid #e5e5df;border-radius:20px;min-height:260px;background:#fafaf8;transition:border-color .3s,background .3s}.about-values__grid article:hover{background:#fff8f4;border-color:#ffc3b1}.about-values__grid h3{font-size:25px;line-height:1.2;letter-spacing:-.03em}.about-values__grid p{font-size:16px;line-height:1.6;max-width:360px}
.about-journey{padding:80px 0;background:#f6f6f3}.about-journey__list{margin-top:45px}.about-journey__list article:hover{padding-left:0}.about-journey__list p{line-height:1.6}
.profile-toolkit{padding-block:80px}.profile-toolkit__grid article{border:1px solid #e7e7e1;background:white}.profile-toolkit__grid p{font-size:16px;line-height:1.9}.profile-languages{font-size:14px}
.about-contact{margin:0 24px 24px;border-radius:24px}.about-contact .ref-shell{padding:40px 0}.about-contact h2{font-size:clamp(56px,8vw,110px);margin:50px 0;letter-spacing:-.06em}
@media(max-width:850px){.about-composition .ref-shell,.about-mosaic__rail{width:calc(100% - 48px)}.about-intro-grid{gap:28px}.about-hero h1{font-size:64px}.about-location span{display:none}.about-mosaic__rail{grid-template-columns:1fr 1fr}.about-note{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;gap:30px}.about-note>span{margin:0}.about-note p{margin:0;font-size:22px}.about-story__grid{grid-template-columns:1fr;gap:24px}.about-belief__grid{gap:30px}.about-values__head h2{margin-top:25px}}
@media(max-width:600px){.about-hero{padding:115px 0 32px}.about-intro-grid{grid-template-columns:1fr;gap:32px}.about-hero h1{font-size:clamp(54px,13vw,76px)}.about-hero__intro{font-size:17px}.about-location{margin-top:28px}.about-portrait{aspect-ratio:4/4.6}.portrait-placeholder b{font-size:65vw}.about-mosaic{padding-bottom:64px}.about-mosaic__rail{grid-template-columns:1fr}.about-mosaic__rail>*{min-height:260px}.about-note{grid-column:auto;flex-direction:column;align-items:flex-start;gap:20px}.about-note p{font-size:28px}.about-story__copy{grid-template-columns:1fr}.about-anchors article{padding:24px 0!important}.about-belief__grid{grid-template-columns:1fr}.about-values__grid{grid-template-columns:1fr}.about-values,.about-journey,.profile-toolkit{padding-block:60px}.about-contact{margin:0 12px 12px}.about-contact__bottom a{font-size:16px}.about-contact .ref-shell{width:calc(100% - 40px)}}
/* A tighter opening, then a consistent reading rhythm down the page. */
.about-hero{padding-top:120px;padding-bottom:56px}
.about-intro-grid{grid-template-columns:1.2fr 1fr;gap:76px}
.about-hero h1{font-size:clamp(58px,6.2vw,88px);line-height:1.02}
.about-eyebrow{margin-bottom:24px}
.about-hero__intro{margin:22px 0;font-size:17px;line-height:1.65}
.about-intro-actions{margin-top:24px}
.about-location{margin-top:26px}
.about-portrait{height:490px;aspect-ratio:auto;border-radius:120px 24px 24px 24px}
.portrait-placeholder{background:radial-gradient(ellipse at 65% 35%,#f9f5ed,transparent 65%),#e4e0d7;padding:36px 26px}
.portrait-placeholder>span{margin-left:40px;max-width:180px;line-height:1.7}
.portrait-placeholder b{font-size:290px;top:20%;color:#c7bfae}
.portrait-placeholder small{margin-bottom:86px}
.about-mosaic__rail{gap:20px}.about-mosaic__rail>*{min-height:260px}
.about-now h2{font-size:28px}.about-note{background:#fff1c8}.about-note>span{color:#ff4b23}
.about-story__copy{column-gap:36px;color:#555550}.about-story__copy .about-lead{font-size:23px;letter-spacing:-.02em;line-height:1.5}
.about-anchors__grid{border:0;background:#f5f5f2;border-radius:20px;overflow:hidden}
.about-anchors article{padding:32px!important;border-color:#e1e1da}.about-anchors strong{font-size:64px;color:#292922}.about-anchors p{font-size:10px}
.about-values__grid article{min-height:230px}.about-values__grid i{font-size:32px;margin:20px 0;line-height:1}.about-values__grid h3{font-size:23px}
.about-journey__list article{position:relative;border:0;border-bottom:1px solid #deded7;padding:28px 0;grid-template-columns:48px 1fr 1fr;gap:22px}
.about-journey__list article>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d8d8d0;border-radius:50%;font:11px 'DM Mono',monospace;background:#fff;color:#ff4b23}
.about-journey__list article h3{font-size:25px;letter-spacing:-.03em;line-height:1.2;margin-top:10px}.about-journey__list article p{font-size:16px;color:#66665f}
.profile-toolkit>h2{font-size:clamp(40px,4.8vw,66px);line-height:1.05}
.profile-toolkit__grid article{position:relative;background:#fafaf7;padding:28px;border-radius:18px}
.profile-toolkit__grid h3{margin:18px 0;font-size:24px}
.about-skill-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid #e6e4db;background:#fff;border-radius:12px;font:18px ui-monospace,monospace;color:#ff4b23}
.about-skill-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.about-skill-tags li{padding:8px 12px;border:1px solid #e5e4de;border-radius:7px;background:white;color:#4b4b45;font-size:13px;line-height:1.3}
.profile-languages{padding-top:24px;margin-top:28px;border-top:1px solid #e6e6df;line-height:1.8}
.about-contact{background:#f0eee7;color:#191919}.about-contact h2 em{color:#ff4b23}.about-contact__top{color:#606058}.about-contact__bottom p{color:#606058}
@media(max-width:850px){.about-intro-grid{gap:30px}.about-hero h1{font-size:58px}.about-portrait{height:450px;border-top-left-radius:80px}.portrait-placeholder b{font-size:240px}.about-journey__list article{grid-template-columns:40px 1fr}.about-journey__list article>p{grid-column:2}}
@media(max-width:600px){.about-hero{padding-top:110px}.about-intro-grid{grid-template-columns:1fr;gap:30px}.about-hero h1{font-size:clamp(52px,13vw,72px)}.about-portrait{height:auto;aspect-ratio:4/4.5}.portrait-placeholder b{font-size:65vw}.about-anchors article{padding:25px!important}.about-journey__list article{gap:12px}.about-journey__list article h3{font-size:23px}.about-contact h2{font-size:54px}}
/* A shared motion rhythm; hover never changes the reading layout. */
.about-composition{--about-ease:cubic-bezier(.22,1,.36,1)}
.about-portrait{box-shadow:0 12px 40px -25px #3b332c40;transition:box-shadow .6s var(--about-ease)}
.about-portrait .about-photo-image,.portrait-placeholder b{transition:transform .9s var(--about-ease)}
.about-portrait figcaption{transition:background .4s,translate .6s var(--about-ease)}
.about-portrait figcaption i,.about-intro-actions a span,.about-contact__bottom a i{transition:transform .45s var(--about-ease)}
.about-mosaic__rail>*{transition:box-shadow .5s var(--about-ease),translate .5s var(--about-ease)}
.about-note>span{transform-origin:center;align-self:flex-start;transition:transform .7s var(--about-ease)}
.about-values__grid h3,.about-values__grid p{max-width:100%}
.about-values__grid article,.about-values__grid article+article{border:1px solid #e5e5df;transition:background .4s,border-color .4s,box-shadow .5s,translate .5s var(--about-ease)}
.about-values__grid i{width:48px;height:48px;display:grid;place-items:center;background:#fff0e9;border-radius:14px;transition:background .4s,color .4s,rotate .5s var(--about-ease)}
.about-journey__list article{transition:background .35s}.about-journey__list article:hover{background:transparent}
.about-journey__list article>span{transition:background .35s,color .35s,border-color .35s}.about-journey__list article p{max-width:100%}
.profile-toolkit__grid article{transition:border-color .4s,box-shadow .5s,translate .5s var(--about-ease)}
.about-skill-mark,.about-skill-tags li{transition:color .3s,background .3s,border-color .3s}
.about-composition .personal-links a{position:relative;border:0;padding-bottom:8px}
.about-composition .personal-links a:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#ff4b23;transform:scaleX(.18);transform-origin:left;transition:transform .45s var(--about-ease)}
.about-contact__bottom a{transition:background .35s,box-shadow .4s;transform:none!important}
.about-composition a:focus-visible{outline:2px solid #ff4b23;outline-offset:5px}
@media(hover:hover) and (pointer:fine){
 .about-portrait:hover{box-shadow:0 24px 50px -24px #3b332c55}
 .about-portrait:hover .about-photo-image{transform:scale(1.035)}
 .about-portrait:hover .portrait-placeholder b{transform:translateY(-6px) rotate(-3deg)}
 .about-portrait:hover figcaption{background:#ffffffed;translate:0 -4px}
 .about-portrait:hover figcaption i{transform:rotate(45deg)}
 .about-intro-actions a:hover span{transform:translate(3px,-3px)}
 .about-mosaic__rail>*:hover{translate:0 -4px;box-shadow:0 16px 32px -24px #29271f55}
 .about-note:hover>span{transform:rotate(90deg)}
 .about-values__grid article:hover{translate:0 -4px;box-shadow:0 16px 32px -24px #9a4c3450}
 .about-values__grid article:hover i{background:#ff4b23;color:white;rotate:-8deg}
 .about-journey__list article:hover{background:#efefea}
 .about-journey__list article:hover>span{background:#ff4b23;color:#fff;border-color:#ff4b23}
 .profile-toolkit__grid article:hover{translate:0 -4px;border-color:#d3cec0;box-shadow:0 16px 32px -24px #29271f40}
 .profile-toolkit__grid article:hover .about-skill-mark{background:#1c1c1c;color:#fff;border-color:#1c1c1c}
 .about-skill-tags li:hover{background:#fff0e9;border-color:#ffc3ab;color:#9b351b}
 .about-composition .personal-links a:hover:after{transform:scaleX(1)}
 .about-contact__bottom a:hover{background:#34332b;box-shadow:0 10px 24px #00000018}
 .about-contact__bottom a:hover i{transform:rotate(45deg)}
}
.about-composition .personal-links a:focus-visible:after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.about-composition *,.about-composition *:after{transition:none!important;animation:none!important;translate:none!important;rotate:none!important}.about-portrait:hover .about-photo-image,.about-portrait:hover .portrait-placeholder b,.about-note:hover>span{transform:none}}

/* The About title follows the same system while the portrait and personal story remain distinct. */
.about-hero.about-hero--page{padding-top:108px}.about-page-banner{padding-bottom:52px}.about-page-banner__top{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #deded8;color:#74746e;font:10px/1.2 'DM Mono',monospace;letter-spacing:.1em}.about-page-title{margin:54px 0 0!important;font-size:clamp(100px,15.5vw,220px)!important;font-weight:500!important;letter-spacing:-.12em!important;line-height:.72!important}.about-page-title em{font-style:normal;color:#ff4b23}.about-hero--page .about-intro-grid{padding-top:8px}.about-page-statement{max-width:600px;margin:0!important;font-size:clamp(40px,4.7vw,72px);font-weight:500;line-height:.9;letter-spacing:-.07em}.about-page-statement span{color:#ff4b23}.about-hero--page .about-hero__intro{margin-top:25px}
@media(max-width:850px){.about-hero.about-hero--page{padding-top:102px}.about-page-banner{padding-bottom:38px}.about-page-title{margin-top:46px!important}.about-page-statement{font-size:clamp(39px,6.6vw,58px)}}
@media(max-width:600px){.about-hero.about-hero--page{padding-top:104px}.about-page-banner{padding-bottom:32px}.about-page-banner__top{font-size:8px}.about-page-banner__top span:last-child{display:none}.about-page-title{margin-top:43px!important;font-size:23vw!important}.about-page-statement{font-size:12vw;line-height:.88}.about-hero--page .about-intro-grid{padding-top:4px}}
