:root{
  --ink:#2d2c2b;
  --muted:#6e6b68;
  --paper:#f8f3eb;
  --white:rgba(255,255,255,.84);
  --pink:#f3d9d3;
  --blue:#dbe9ee;
  --green:#dfe8d4;
  --sage:#cad7b7;
  --sand:#d2a878;
  --acid:#b6ee72;
  --line:rgba(45,44,43,.14);
  --shadow:0 18px 60px rgba(92,75,58,.10);
  --sans:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif;
  --display:"Aptos Display","Segoe UI Variable Display","Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif;
  --max:1700px;
}

*{box-sizing:border-box}
.header-scroll-sentinel{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}
html{scroll-behavior:smooth;scroll-padding-top:100px;background:var(--paper)}
.site-config-loading body{visibility:hidden}
body{margin:0;color:var(--ink);background:linear-gradient(135deg,#f8e6df 0%,#f5f0df 38%,#e6eee0 68%,#e1eaf2 100%);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.dialog-open{overflow:hidden}
::selection{background:var(--sand);color:white}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}
.skip-link{position:fixed;z-index:999;top:-70px;left:18px;padding:11px 17px;background:var(--ink);color:white;border-radius:99px}.skip-link:focus{top:14px}

.site-header{position:fixed;z-index:100;top:15px;left:50%;transform:translateX(-50%);width:min(calc(100% - 48px),1660px);height:72px;padding:0 18px 0 24px;border:1px solid rgba(255,255,255,.72);border-radius:38px;background:rgba(255,255,255,.74);box-shadow:0 12px 38px rgba(77,64,55,.08);backdrop-filter:blur(22px);display:flex;align-items:center;justify-content:space-between;transition:.3s}
.site-header.is-scrolled{top:10px;height:64px;background:rgba(255,255,255,.88)}
.brand{display:flex;align-items:center;gap:13px;font-size:14px;font-weight:700;letter-spacing:.16em}.brand-avatar{width:38px;height:38px;padding:2px;border:1px solid var(--line);border-radius:50%;background:white;overflow:hidden}.brand-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.main-nav{display:flex;align-items:center;gap:6px}.main-nav a{padding:11px 19px;border-radius:99px;color:#65615e;font-size:13px;font-weight:500;transition:.25s}.main-nav a:hover,.main-nav a.is-active{background:var(--ink);color:white}
.header-resume{display:flex;gap:13px;align-items:center;padding:11px 17px;border:1px solid var(--ink);border-radius:99px;font-size:12px}.header-resume:hover{background:var(--ink);color:white}
.menu-toggle{display:none;border:0;background:none;padding:10px}

.hero{position:relative;min-height:100svh;overflow:hidden;padding:118px max(6vw,calc((100vw - var(--max))/2 + 55px)) 82px;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);grid-template-rows:auto auto auto;column-gap:clamp(42px,5vw,78px);row-gap:20px;align-items:center}
.ambient{position:absolute;border-radius:50%;filter:none;opacity:.72;pointer-events:none}.ambient-pink{width:520px;height:520px;left:-13%;top:2%;background:radial-gradient(circle,#f0cac2 0,rgba(240,202,194,.55) 36%,transparent 72%)}.ambient-blue{width:620px;height:620px;right:-13%;bottom:-18%;background:radial-gradient(circle,#c7deec 0,rgba(199,222,236,.52) 38%,transparent 73%)}.ambient-green{width:450px;height:450px;left:40%;top:13%;background:radial-gradient(circle,#dae7c5 0,rgba(218,231,197,.5) 38%,transparent 72%)}
.hero-copy,.hero-portrait,.hero-stats,.scroll-more{position:relative;z-index:2}.hero-copy{grid-column:2;grid-row:1}.hero-copy::before{content:"ABOUT / 01";display:block;margin-bottom:18px;color:#ad805e;font-size:8px;font-weight:700;letter-spacing:.2em}
.hello-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.75);border-radius:99px;font-size:11px;letter-spacing:.16em;color:#696663;box-shadow:0 8px 25px rgba(80,63,54,.05)}.hello-pill[hidden]{display:none!important}.hello-pill i{width:8px;height:8px;border-radius:50%;background:#8c9290}
.hero h1{margin:0;font:700 clamp(55px,5.7vw,86px)/.98 var(--display);letter-spacing:-.07em;color:#292827;white-space:nowrap}
.hero-role{margin:24px 0 0;color:#bc855e;font-size:clamp(16px,1.5vw,21px);font-weight:650;letter-spacing:.025em}
.hero-intro{width:100%;height:auto!important;max-width:650px;margin:18px 0 0;color:#696561;font-size:12px;line-height:1.8;text-align:justify!important;text-align-last:justify!important;text-justify:inter-character;word-break:break-all;overflow:visible!important;white-space:normal!important;text-overflow:clip!important}
.personal-tags{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:flex-start;gap:10px;margin:32px 0 0}.personal-tags span{display:inline-flex;align-items:center;justify-content:center;height:36px;min-height:36px;margin:0;padding:0 14px;border:1px solid rgba(255,255,255,.84);background:rgba(255,255,255,.48);border-radius:99px;color:#696661;font-size:10px;line-height:1;white-space:nowrap;vertical-align:middle}
.hero-actions{display:flex;align-items:center;gap:12px;margin:26px 0 0}.button{display:flex;align-items:center;justify-content:space-between;gap:27px;min-width:138px;padding:13px 18px;border-radius:99px;font-size:12px;transition:.25s;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white;border:0}.button-light{border:1px solid var(--ink);background:rgba(255,255,255,.4)}
.hero-portrait{grid-column:1;grid-row:1/3;width:100%;max-width:470px;justify-self:center;perspective:1100px}.portrait-frame{position:relative;overflow:hidden;aspect-ratio:.78;border:8px solid rgba(255,255,255,.72);border-radius:32px;background:linear-gradient(145deg,#e3edd8,#d2e4ed);box-shadow:0 28px 70px rgba(73,67,65,.15);transition:transform .9s cubic-bezier(.16,1,.3,1),box-shadow .9s ease,border-color .7s ease}.portrait-frame::after{content:"";position:absolute;inset:-35%;pointer-events:none;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.42) 49%,transparent 60%);transform:translateX(-65%) rotate(7deg);opacity:0;transition:transform 1.15s cubic-bezier(.16,1,.3,1),opacity .5s ease}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 25%;transform:translateX(-2.2%) scale(1.05);transform-origin:center 25%;filter:saturate(.88);transition:transform 1.15s cubic-bezier(.16,1,.3,1),filter .8s ease}.hero-portrait:hover .portrait-frame{transform:translateY(-8px) rotateX(1.2deg) rotateY(-1.5deg);border-color:rgba(255,255,255,.94);box-shadow:0 38px 86px rgba(73,67,65,.2)}.hero-portrait:hover .portrait-frame::after{transform:translateX(65%) rotate(7deg);opacity:1}.hero-portrait:hover .portrait-frame img{transform:translateX(-2.2%) scale(1.075);filter:saturate(.96) contrast(1.02)}body.ve-mode .hero-portrait:hover .portrait-frame,body.ve-mode .hero-portrait:hover .portrait-frame img{transform:none!important}body.ve-mode .portrait-frame::after{display:none}
.spark{position:absolute;color:#cf9f79}.spark-one{left:-28px;top:17%;font-size:30px}.spark-two{right:-15px;top:10%;font-size:16px}
.hero-stats{grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(4,1fr);margin-top:0;padding:19px 0;border-block:1px solid var(--line);border-inline:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.hero-stats>span{display:flex;align-items:flex-end;justify-content:flex-start;gap:10px;color:#66635f;font-size:9px}.hero-stats>span+span{border-left:1px solid var(--line);padding-left:18px}.hero-stats .stat-label{display:inline-block;padding-bottom:3px}.hero-stats b{font:650 clamp(28px,2.8vw,42px)/1 var(--display);letter-spacing:-.05em}.hero-stats sup{color:#86af35;font-size:.45em}
.hero-career{position:relative;z-index:2;grid-column:1/-1;display:grid;grid-template-columns:190px 1fr;gap:34px;align-items:start;margin-top:8px;padding:27px 30px;border:1px solid rgba(255,255,255,.82);border-radius:20px;background:rgba(255,255,255,.38);box-shadow:0 12px 35px rgba(79,65,57,.05);backdrop-filter:blur(12px)}.career-heading span{font-size:8px;letter-spacing:.18em;color:#b48663}.career-heading h2{margin-top:8px;font:650 24px/1.1 var(--display);letter-spacing:-.035em}.career-track{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px}.career-track::before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:linear-gradient(90deg,#ca9a70,#aebb89,#a9c9d1)}.career-item{position:relative;padding:25px 4px 0}.career-item::before{content:"";position:absolute;left:0;top:1px;width:11px;height:11px;border:3px solid rgba(255,255,255,.8);border-radius:50%;background:#a9b979;box-shadow:0 0 0 1px rgba(136,151,100,.26)}.career-item time{font-size:9px;letter-spacing:.08em;color:#a77c5c}.career-item h3{margin-top:9px;font:650 17px/1.35 var(--display)}.career-item p{margin-top:6px;color:#786f69;font-size:10px}.career-item>span{display:block;margin-top:12px;color:#7a8176;font-size:9px;letter-spacing:.02em}
.scroll-more{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:10px 15px;background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.8);border-radius:99px;color:#77716d;font-size:10px}.scroll-more b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#c9996e;color:white}

.section{max-width:var(--max);margin:auto;padding:clamp(90px,9vw,140px) clamp(24px,6vw,90px)}
.work,.learning{content-visibility:visible}
.section-label{font-size:10px;font-weight:650;letter-spacing:.2em;color:#bb8d66}.section-heading h2{font:700 clamp(46px,5.3vw,76px)/1.08 var(--display);letter-spacing:-.06em}.section-heading>p,.section-heading>div+ p{color:var(--muted);font-size:13px;line-height:1.8}.section-heading.centered{text-align:center}.section-heading.centered .section-label{margin-bottom:25px}.section-heading.centered h2{margin-bottom:25px}.section-heading.centered>p{max-width:720px;margin:auto}
#strengths .section-label{display:block;opacity:1!important;visibility:visible!important;overflow:visible;white-space:normal}
#strengths .strengths-title-static{opacity:1!important;visibility:visible!important;transform:none!important;clip-path:none!important;overflow:visible!important}

.animated-gradient-text{--gradient-colors:#a8674d,#e78f63,#9c8d54,#a8674d;display:block;width:fit-content;max-width:100%;background-image:linear-gradient(to right,var(--gradient-colors))!important;background-size:300% 100%!important;background-repeat:repeat!important;background-position:0 50%;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;animation:gradient-text-flow 3s linear infinite alternate;will-change:background-position}.section-heading.centered .animated-gradient-text{margin-left:auto;margin-right:auto}#hero-title{--gradient-colors:#c96848,#ef9568,#75875e,#bc6d50;text-shadow:0 8px 30px rgba(190,110,77,.09)}#work-title{--gradient-colors:#934f3d,#e38455,#7b6b42,#934f3d}#strengths-title{--gradient-colors:#8a5146,#e5885b,#677c57,#8a5146}.detail-gradient-text{--gradient-colors:#3b3531,#a76044,#6f7654,#3b3531}.detail-hero-event .detail-gradient-text{--gradient-colors:#332f2c,#a35c46,#79734f,#332f2c}.detail-hero-writing .detail-gradient-text{--gradient-colors:#28372d,#65805a,#a06f50,#28372d}.detail-hero-visual .detail-gradient-text{--gradient-colors:#30383a,#617f83,#a2644e,#30383a}@keyframes gradient-text-flow{from{background-position:0 50%}to{background-position:100% 50%}}

.experience{max-width:none;padding-inline:max(clamp(24px,6vw,90px),calc((100vw - var(--max))/2 + 90px));background:rgba(255,250,245,.56);border-block:1px solid rgba(255,255,255,.7)}
.timeline{position:relative;max-width:1060px;margin:64px auto 0;padding-left:42px}.timeline::before{content:"";position:absolute;left:18px;top:0;bottom:0;width:1px;background:#d3ad86}
.timeline-entry{position:relative;margin-bottom:30px}.timeline-entry:last-child{margin-bottom:0}.timeline-no{position:absolute;z-index:2;left:-42px;top:32px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#c89565;color:white;font-size:10px;box-shadow:0 0 0 7px var(--paper)}
.timeline-card{box-sizing:border-box;height:280px;padding:26px 34px;border:1px solid rgba(255,255,255,.9);border-radius:23px;background:rgba(255,255,255,.76);box-shadow:var(--shadow);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:flex-start}.timeline-card time{display:inline-block;align-self:flex-start;white-space:nowrap;font-size:11.5px;color:#b48a67;letter-spacing:.03em}.timeline-card h3{display:flex;align-items:center;width:100%;min-height:34px;margin-top:10px;font:650 clamp(23px,2.4vw,30px)/1.2 var(--display);letter-spacing:-.03em}.timeline-role{align-self:flex-start;display:inline-block;margin-top:7px;padding:6px 11px;border-radius:99px;background:#f5ece2;color:#a87c57;font-size:10.5px}.timeline-card ul{width:100%;margin:18px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,48px);column-gap:26px;row-gap:6px;align-content:start}.timeline-card li{position:relative;box-sizing:border-box;min-width:0;height:48px;padding-left:15px;color:#615e5a;font-size:11.5px;line-height:1.65}.timeline-bullet{position:absolute;left:0;top:-.04em;color:#d0a070;font-size:16px;line-height:1.2}.timeline-card li b{color:#343230}

.work{max-width:none;padding-inline:max(clamp(24px,6vw,90px),calc((100vw - var(--max))/2 + 90px))}.work .section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:50px;overflow:visible}.work .section-heading .section-label{margin-bottom:17px}.work .section-heading>p{flex:0 1 440px;width:auto!important;height:auto!important;min-width:0;max-width:440px!important;padding-bottom:8px;overflow:visible!important;white-space:normal!important;text-overflow:clip!important;line-height:1.8!important;translate:none!important}
.work-modules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;overflow:visible}.work-module{height:410px;min-width:0;border:1px solid rgba(255,255,255,.88);border-radius:23px;box-shadow:var(--shadow);overflow:hidden}.work-module button{position:relative;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:none;text-align:left;cursor:pointer;overflow:hidden}.module-top{position:absolute;z-index:4;left:20px;right:20px;top:18px;display:flex;align-items:center;justify-content:space-between;font-size:9px}.module-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;font-size:14px;transition:.3s}.module-copy{position:absolute;z-index:4;left:22px;right:22px;bottom:23px}.module-copy p{margin-bottom:9px;font-size:8px;letter-spacing:.14em;opacity:.65}.module-copy h3{margin-bottom:10px;font:650 clamp(23px,2vw,29px)/1.1 var(--display);letter-spacing:-.035em}.module-copy>span{font-size:10px;line-height:1.7;opacity:.67}.work-module:hover .module-arrow{transform:rotate(45deg);background:white;color:var(--ink)}
.module-project{background:#eee7d5}.visual-steps{position:absolute;top:31%;left:18%;right:18%;height:105px;display:flex;align-items:flex-end}.visual-steps i{flex:1;border:1px solid #8f9862;border-top:0}.visual-steps i:nth-child(1){height:25%}.visual-steps i:nth-child(2){height:48%}.visual-steps i:nth-child(3){height:74%}.visual-steps i:nth-child(4){height:100%}
.module-event,.module-visual{color:white}.work-module>button>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.6s}.module-event img{filter:saturate(.48);object-position:center}.module-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,25,23,.12),rgba(20,25,23,.86))}.work-module:hover img{transform:scale(1.045)}
.module-writing{background:var(--sage)}.visual-rings i{position:absolute;left:61%;top:38%;transform:translate(-50%,-50%);border:1px solid rgba(45,44,43,.2);border-radius:50%}.visual-rings i:nth-child(1){width:160px;height:160px}.visual-rings i:nth-child(2){width:112px;height:112px}.visual-rings i:nth-child(3){width:66px;height:66px}.writing-number{position:absolute;top:39%;left:18px;font:650 clamp(64px,6vw,90px)/1 var(--display);letter-spacing:-.08em}.module-visual img{object-position:center 5%;filter:saturate(.68)}

.learning{max-width:none;padding-inline:max(clamp(24px,6vw,90px),calc((100vw - var(--max))/2 + 90px));background:linear-gradient(135deg,rgba(225,237,218,.7),rgba(224,234,243,.8))}
.learning-title{display:grid;grid-template-columns:.35fr 1fr 1fr;gap:50px;align-items:end;margin-bottom:55px}.learning-title h2{font:700 clamp(48px,5.5vw,78px)/1 var(--display);letter-spacing:-.06em}.learning-title>p:last-child{max-width:420px;color:var(--muted);font-size:13px;line-height:1.8}
.learning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.learning-card{position:relative;min-height:290px;padding:24px;border:1px solid rgba(255,255,255,.9);border-radius:22px;background:rgba(255,255,255,.6);box-shadow:0 13px 38px rgba(72,78,71,.06);transition:.3s}.learning-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.85)}.learning-card>span{font-size:9px;color:#99918b}.learning-icon{display:grid;place-items:center;width:68px;height:68px;margin:28px 0;border:1px solid #9ba890;border-radius:50%;font:600 18px var(--display);color:#72806b}.learning-card h3{font:650 21px var(--display)}.learning-card p{margin-top:11px;color:#696e68;font-size:11px;line-height:1.75}.learning-card b{position:absolute;left:24px;bottom:23px;font-size:9px;color:#9a795e}
.strengths-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.strength-card{--card-accent:#c7f044;--hover-bg:#dfff68;grid-column:span 3;min-height:300px;padding:25px 25px 68px;background:rgba(255,255,255,.62);transition:transform .38s cubic-bezier(.2,.8,.2,1),background .38s ease,color .38s ease,box-shadow .38s ease}.strength-card.strength-featured{grid-column:span 6;min-height:315px}.strength-card:nth-child(2){--card-accent:#ff9b68;--hover-bg:#ffbd91;background:linear-gradient(145deg,rgba(237,226,202,.82),rgba(220,232,211,.8))}.strength-card:nth-child(3){--card-accent:#65cddd;--hover-bg:#9ee5f2;background:rgba(255,255,255,.68)}.strength-card:nth-child(4){--card-accent:#91d556;--hover-bg:#c8f38b;background:rgba(230,237,221,.72)}.strength-card:nth-child(5){--card-accent:#e8aa38;--hover-bg:#ffd47b;background:rgba(237,229,216,.72)}.strength-card:nth-child(6){--card-accent:#8d84e8;--hover-bg:#c8c2ff;background:rgba(222,234,239,.72)}.strength-card>*:not(.edge-light):not(.strength-art){position:relative;z-index:3}.strength-card .learning-icon{width:55px;height:55px;margin:23px 0 20px;border-color:color-mix(in srgb,var(--card-accent) 70%,#75806f);background:color-mix(in srgb,var(--card-accent) 14%,transparent);font-size:15px;transition:transform .38s ease,background .38s ease,color .38s ease}.strength-card h3{max-width:95%;font-size:clamp(18px,1.7vw,24px);line-height:1.25}.strength-card p{max-width:620px;margin-top:12px;font-size:11px;line-height:1.75;transition:color .38s ease}.strength-card strong{display:block;margin-top:16px;color:#9b7455;font:650 10px/1.5 var(--sans);transition:color .38s ease}.strength-card b{left:25px;bottom:22px;color:#747e6c;font-weight:600;letter-spacing:.03em;transition:color .38s ease}.strength-art{position:absolute;z-index:2;right:22px;top:26px;width:76px;height:76px;pointer-events:none;filter:drop-shadow(0 9px 14px rgba(62,67,58,.12));transition:transform .45s cubic-bezier(.2,.8,.2,1)}.strength-featured .strength-art{right:28px;top:34px;width:104px;height:104px}.strength-art i{position:absolute;display:block;border:1px solid rgba(45,44,43,.32);background:var(--card-accent)}.strength-art i:nth-child(1){right:4%;bottom:2%;width:55%;height:55%;border-radius:50% 50% 44% 56%;transform:rotate(-18deg)}.strength-art i:nth-child(2){left:4%;top:4%;width:47%;height:47%;border-radius:12px;transform:rotate(42deg);background:rgba(255,255,255,.84)}.strength-art i:nth-child(3){right:8%;top:2%;width:18%;height:18%;border-radius:50%;background:#3d3d3b}.strength-card.reveal.is-visible:hover{z-index:5;transform:translateY(-9px) scale(1.012);background:var(--hover-bg);color:#252622;box-shadow:0 24px 55px rgba(75,76,59,.2)}.strength-card:hover .learning-icon{transform:rotate(-8deg) scale(1.08);background:#292a27;color:white}.strength-card:hover .strength-art{transform:translate(-5px,7px) rotate(8deg) scale(1.08)}.strength-card:hover p,.strength-card:hover b{color:#3e4138}.strength-card:hover strong{color:#69452e}

.hero-career{grid-row:3}.strength-card>b{position:absolute!important;z-index:3}

/* React Bits BorderGlow, adapted for the site's native HTML/CSS cards. */
.border-glow-card{
  --edge-proximity:0;
  --cursor-angle:45deg;
  --edge-sensitivity:30;
  --color-sensitivity:50;
  --glow-padding:30px;
  position:relative;
  isolation:isolate;
}
.border-glow-card::before{
  content:"";
  position:absolute;
  z-index:8;
  inset:-1px;
  border:2px solid transparent;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(transparent 0 100%) padding-box,
    radial-gradient(at 80% 55%,#d7a277 0,transparent 48%) border-box,
    radial-gradient(at 69% 34%,#d8c4b7 0,transparent 48%) border-box,
    radial-gradient(at 8% 6%,#b7c99f 0,transparent 48%) border-box,
    radial-gradient(at 41% 38%,#afced8 0,transparent 48%) border-box,
    radial-gradient(at 86% 85%,#c5d9d6 0,transparent 48%) border-box,
    linear-gradient(#d7a277 0 100%) border-box;
  mask-image:conic-gradient(from var(--cursor-angle) at center,#000 0 24%,transparent 39% 61%,#000 76% 100%);
  opacity:clamp(0,calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity))),1);
  transition:opacity .22s ease-out;
}
.border-glow-card>.edge-light{
  position:absolute;
  z-index:7;
  inset:calc(var(--glow-padding) * -1);
  border-radius:inherit;
  pointer-events:none;
  opacity:clamp(0,calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity))),1);
  mask-image:conic-gradient(from var(--cursor-angle) at center,#000 0 3%,transparent 11% 89%,#000 97% 100%);
  transition:opacity .22s ease-out;
}
.border-glow-card>.edge-light::before{
  content:"";
  position:absolute;
  inset:var(--glow-padding);
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(210,168,120,.9),inset 0 0 10px rgba(183,201,159,.35),0 0 9px rgba(215,162,119,.34),0 0 24px rgba(175,206,216,.23),0 0 42px rgba(183,201,159,.16);
}
.border-glow-card:not(:hover)::before,.border-glow-card:not(:hover)>.edge-light{opacity:0;transition:opacity .55s ease-in-out}

/* React Bits StarBorder, adapted to the portfolio's warm editorial palette. */
.star-border-card{--star-color:#a9c777;--star-color-2:#94c8d2;--star-speed:6.8s;position:relative;isolation:isolate;overflow:hidden;transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .65s ease,border-color .45s ease}.star-border-card>*:not(.star-trail){position:relative;z-index:2}.star-trail{position:absolute;z-index:1;width:280%;height:54%;border-radius:50%;pointer-events:none;opacity:.45;filter:blur(.2px);background:radial-gradient(ellipse at center,var(--star-color) 0 1.5%,color-mix(in srgb,var(--star-color-2) 75%,transparent) 4%,transparent 12%);will-change:transform,opacity}.star-trail-top{top:-30%;left:-238%;animation:star-movement-top var(--star-speed) linear infinite alternate}.star-trail-bottom{right:-238%;bottom:-30%;animation:star-movement-bottom calc(var(--star-speed) * 1.08) linear infinite alternate}.star-border-card::after{content:"";position:absolute;z-index:1;inset:0;border:1px solid color-mix(in srgb,var(--star-color) 42%,transparent);border-radius:inherit;pointer-events:none;opacity:.46;transition:opacity .45s ease,box-shadow .45s ease}.star-border-card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--star-color) 58%,white);box-shadow:0 25px 65px rgba(77,73,59,.16)}.star-border-card:hover::after{opacity:.95;box-shadow:inset 0 0 18px color-mix(in srgb,var(--star-color) 15%,transparent),0 0 22px color-mix(in srgb,var(--star-color-2) 18%,transparent)}.star-border-card:hover .star-trail{animation-duration:2.6s;opacity:.9}.hero-career.star-border-card{--star-color:#a4c56f;--star-color-2:#94cbd5}.learning-contact.star-border-card{--star-color:#e1b36f;--star-color-2:#b9d87d}.download-panel.star-border-card{--star-color:#d5a06f;--star-color-2:#a9c88a}.detail-item.star-border-card{--star-speed:7.6s}.detail-item:nth-child(2n).star-border-card{--star-color:#91bbc1;--star-color-2:#c3d798}.download-link.star-border-card{--star-color:#d09b67;--star-color-2:#a7c676;--star-speed:4.8s;overflow:hidden}.download-link.star-border-card:hover{transform:translateY(-3px);background:var(--ink);color:white}.download-link .star-trail{height:90%;filter:none}.hero-career:hover .career-item::before{transform:scale(1.22);box-shadow:0 0 0 5px rgba(169,199,119,.2);transition:.5s cubic-bezier(.16,1,.3,1)}.learning-contact:hover .learning-contact-links{transform:translateX(-8px);transition:.65s cubic-bezier(.16,1,.3,1)}.detail-item:hover h3{transform:translateX(5px);transition:.55s cubic-bezier(.16,1,.3,1)}

@keyframes star-movement-bottom{0%{transform:translate3d(0,0,0);opacity:.85}100%{transform:translate3d(-100%,0,0);opacity:.12}}@keyframes star-movement-top{0%{transform:translate3d(0,0,0);opacity:.85}100%{transform:translate3d(100%,0,0);opacity:.12}}

.gallery-star-card{--star-color:#d39a70;--star-color-2:#9fc7ae;--star-speed:7.2s;position:relative;margin:0;border:1px solid rgba(255,255,255,.82);border-radius:19px;background:rgba(255,255,255,.5);box-shadow:0 13px 38px rgba(72,65,57,.08);overflow:hidden;isolation:isolate}.gallery-star-card:nth-child(even){--star-color:#8fbfca;--star-color-2:#b6cd83}.gallery-star-card img{position:relative;z-index:2;display:block;width:100%;height:460px;border-radius:18px;object-fit:cover;object-position:center;transition:transform 1.05s cubic-bezier(.16,1,.3,1),filter .7s ease;will-change:transform}.gallery-star-card:hover img{transform:scale(1.045) translate3d(0,-5px,0);filter:saturate(1.04) contrast(1.02)}.gallery-star-card .star-trail{z-index:3}.gallery-star-card::after{z-index:4}.gallery-star-card:hover{transform:translateY(-8px) rotate(.25deg)}

body.ve-mode .star-border-card:hover{transform:none}body.ve-mode .hero-career:hover .career-item::before,body.ve-mode .learning-contact:hover .learning-contact-links,body.ve-mode .detail-item:hover h3{transform:none}
.learning-contact{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:70px;padding:34px;border-radius:24px;background:#323330;color:white}.learning-contact>div>span{font-size:9px;letter-spacing:.17em;color:#c5d4a6}.learning-contact h3{margin-top:11px;font:600 clamp(23px,3vw,38px)/1.3 var(--display)}.learning-contact-links{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.learning-contact-links a{display:flex;align-items:center;justify-content:flex-end;gap:5px;font-size:11px;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:5px}.learning footer{display:flex;justify-content:space-between;margin-top:30px;color:#777d77;font-size:9px;letter-spacing:.12em}

.contact-dialog{width:min(calc(100% - 34px),620px);max-width:620px;max-height:calc(100svh - 28px);margin:auto;padding:0;border:0;border-radius:28px;background:rgba(250,247,241,.96);color:var(--ink);box-shadow:0 30px 100px rgba(45,38,34,.24);overflow:auto;opacity:0;transform:translateY(16px) scale(.98);transition:opacity .28s,transform .28s}.contact-dialog[open]{opacity:1;transform:none}.contact-dialog::backdrop{background:rgba(50,44,40,.34);backdrop-filter:blur(10px)}
.contact-dialog-close{position:absolute;z-index:2;right:18px;top:18px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.7);cursor:pointer}.contact-dialog-close span{position:absolute;left:11px;top:20px;width:19px;height:1px;background:var(--ink)}.contact-dialog-close span:first-child{transform:rotate(45deg)}.contact-dialog-close span:last-child{transform:rotate(-45deg)}
.contact-dialog-inner{padding:54px 48px 44px;background:radial-gradient(circle at 10% 0%,rgba(245,210,202,.65),transparent 42%),radial-gradient(circle at 100% 100%,rgba(211,232,238,.75),transparent 44%)}.contact-dialog-kicker{font-size:9px;letter-spacing:.18em;color:#b28362}.contact-dialog h2{margin-top:18px;font:700 clamp(36px,5vw,52px)/1.07 var(--display);letter-spacing:-.055em}.contact-dialog-list{margin-top:32px;border-top:1px solid var(--line)}.contact-dialog-list>*{display:grid;grid-template-columns:60px 1fr 22px;gap:14px;align-items:center;min-height:58px;border-bottom:1px solid var(--line);font-size:11px}.contact-dialog-list span{color:#a1785b}.contact-dialog-list strong{font-weight:550}.contact-dialog-list b{text-align:right;font-weight:500}.contact-dialog-list a:hover strong{color:#a8734c}

.work-dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fbf8f2;color:var(--ink);overflow:hidden;opacity:0;transform:translateY(15px);transition:.3s}.work-dialog[open]{opacity:1;transform:none}.work-dialog::backdrop{background:rgba(33,31,29,.68);backdrop-filter:blur(8px)}.dialog-close{position:fixed;z-index:20;right:22px;top:20px;width:46px;height:46px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(45,44,43,.72);cursor:pointer}.dialog-close span{position:absolute;left:13px;top:22px;width:20px;height:1px;background:white}.dialog-close span:first-child{transform:rotate(45deg)}.dialog-close span:last-child{transform:rotate(-45deg)}.dialog-scroll{height:100%;overflow:auto;overscroll-behavior:contain}
.detail-hero{position:relative;min-height:56vh;padding:105px max(6vw,calc((100vw - 1160px)/2)) 60px;background:linear-gradient(135deg,#f5ddd5 0%,#f5efdf 52%,#dce9e8 100%);color:var(--ink);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.detail-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,black,transparent 72%)}.detail-hero>*{position:relative;z-index:3}.detail-kicker{font-size:9px;letter-spacing:.17em;color:#aa7656;margin-bottom:16px}.detail-hero h2{max-width:52%;font:700 clamp(52px,7vw,94px)/1 var(--display);letter-spacing:-.065em}.detail-hero>p:last-child{max-width:520px;margin-top:20px;color:#69635f;font-size:12px;line-height:1.75}.detail-abstract{position:absolute;z-index:1;inset:0;background:transparent}.detail-abstract::before{content:"";position:absolute;right:-7%;top:-53%;width:62vw;height:62vw;border:1px solid rgba(106,111,90,.18);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.18),0 0 0 140px rgba(255,255,255,.12)}.detail-abstract strong{position:absolute;right:4%;top:3%;font:700 clamp(110px,20vw,300px)/1 var(--display);letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px rgba(83,84,72,.13)}
.detail-hero-writing{background:linear-gradient(135deg,#e5ead6,#d6e2d5 54%,#e1eaf0)}.detail-hero-writing .detail-abstract::before{border-color:rgba(90,110,80,.22)}.detail-hero-writing .detail-abstract strong{-webkit-text-stroke-color:rgba(64,82,60,.16)}
.detail-hero-project .detail-decor i:nth-child(1){width:105px;height:55px;border-left:1px solid #b28c68;border-bottom:1px solid #b28c68}.detail-hero-project .detail-decor i:nth-child(2){width:75px;height:85px;border-left:1px solid #9da67b;border-bottom:1px solid #9da67b}.detail-hero-project .detail-decor i:nth-child(3){width:45px;height:115px;border-left:1px solid #85946f;border-bottom:1px solid #85946f}
.detail-image-panel{position:absolute;z-index:2;right:max(6vw,calc((100vw - 1160px)/2));top:10%;width:42%;height:80%;padding:8px;border-radius:25px;background:rgba(255,255,255,.7);box-shadow:0 24px 65px rgba(75,65,58,.15);transform:rotate(1deg);overflow:hidden}.detail-image-panel img{width:100%;height:100%;border-radius:19px;object-fit:cover;filter:saturate(.72) contrast(.96)}.detail-hero-event{background:linear-gradient(135deg,#f5e3db,#eee9d8 52%,#dce8e6)}.detail-hero-event h2,.detail-hero-event>p:last-child,.detail-hero-visual h2,.detail-hero-visual>p:last-child{max-width:45%}.detail-hero-visual{background:linear-gradient(135deg,#eedfd7,#e8eadb 48%,#d5e7ec)}.detail-hero-visual .detail-image-panel{width:37%;right:10%;transform:rotate(-1.4deg)}.detail-hero-visual .detail-image-panel img{object-position:center top}
.detail-decor{position:absolute;z-index:2!important;right:48%;top:13%;width:150px;height:120px}.detail-decor i{position:absolute;display:block}.detail-decor i:nth-child(1){right:0;top:0;width:15px;height:15px;border:1px solid #ba8e6e;transform:rotate(45deg)}.detail-decor i:nth-child(2){left:10px;bottom:15px;width:42px;height:42px;border:1px solid rgba(120,140,105,.45);border-radius:50%}.detail-decor i:nth-child(3){right:25px;bottom:0;width:6px;height:6px;border-radius:50%;background:#c99970}
.detail-hero-project .detail-decor,.detail-hero-writing .detail-decor{right:9%;top:61%;display:flex;align-items:flex-end;gap:0}.detail-hero-writing .detail-decor i{border-radius:50%;border:1px solid rgba(86,108,76,.3);background:none}.detail-hero-writing .detail-decor i:nth-child(1){width:95px;height:95px}.detail-hero-writing .detail-decor i:nth-child(2){width:65px;height:65px;margin-left:-78px}.detail-hero-writing .detail-decor i:nth-child(3){width:35px;height:35px;margin-left:-50px}
.detail-body{max-width:1160px;margin:auto;padding:clamp(50px,7vw,90px) clamp(24px,6vw,70px)}.detail-divider{display:flex;align-items:center;gap:15px;margin-bottom:34px;color:#a17a5e;font-size:8px;letter-spacing:.16em}.detail-divider i{height:1px;flex:1;background:var(--line)}.download-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px;border:1px solid rgba(255,255,255,.85);border-radius:18px;background:linear-gradient(135deg,#f4e8dc,#edf0e4);margin-bottom:60px;box-shadow:0 12px 35px rgba(74,62,53,.06)}.download-panel>div>span{font-size:9px;letter-spacing:.15em;color:#a47b58}.download-panel h3{font-size:18px;margin-top:7px}.download-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.download-link{display:inline-flex;align-items:center;gap:18px;padding:11px 13px;border:1px solid var(--ink);border-radius:99px;font-size:10px}.download-link:hover{background:var(--ink);color:white}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.detail-item{min-height:190px;padding:24px;border:1px solid rgba(255,255,255,.9);border-radius:18px;background:rgba(255,255,255,.58);box-shadow:0 10px 30px rgba(74,63,55,.05)}.detail-item>span{font-size:8px;letter-spacing:.15em;color:#a47b58}.detail-item h3{font:600 21px var(--display);margin:13px 0}.detail-item p{font-size:12px;line-height:1.8;color:#5d5a57}.detail-gallery{display:grid;grid-template-columns:1.4fr .8fr;gap:12px;margin-top:55px}.detail-gallery img{width:100%;height:480px;border-radius:18px;object-fit:cover}.detail-note{margin-top:20px;font-size:10px;color:#7b7874}
.detail-body-visual .download-panel{align-items:flex-start}.detail-body-visual .download-panel>div:first-child{flex:0 0 190px;padding-top:5px}.detail-body-visual .download-links{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,200px));gap:10px;width:100%;justify-content:end}.detail-body-visual .download-link{box-sizing:border-box;width:200px!important;max-width:100%;height:42px!important;min-width:0;justify-content:space-between;gap:8px;padding:0 13px!important;font-size:11px!important;line-height:1.2}.detail-body-visual .download-link .editable-label{min-width:0;font-size:11px!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-body-visual .download-link>span:last-child{flex:0 0 auto}

.detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.detail-gallery>img{width:100%;height:460px;object-fit:cover;object-position:center;border-radius:18px}
.motion-ready .reveal{opacity:0;transform:translateY(72px) scaleY(.94);transform-origin:50% 100%;clip-path:inset(0 0 24% 0);transition:opacity 1.05s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1),clip-path 1.15s cubic-bezier(.16,1,.3,1);will-change:transform,opacity,clip-path}.motion-ready .reveal.is-visible{opacity:1;transform:none;clip-path:inset(0)}.motion-ready .section-motion-title{opacity:0;transform:translate3d(0,110px,0) scaleX(.72);transform-origin:left bottom;clip-path:inset(0 0 100% 0);transition:opacity .9s ease,transform 1.35s cubic-bezier(.16,1,.3,1),clip-path 1.2s cubic-bezier(.16,1,.3,1)}.motion-ready .section-motion-title.is-motion-visible{opacity:1;transform:none;clip-path:inset(0)}.motion-ready .motion-stagger-item{transition-delay:var(--motion-delay,0ms)}.motion-ready .image-reveal{clip-path:inset(0 100% 0 0);transition:clip-path 1.35s cubic-bezier(.16,1,.3,1)}.motion-ready .image-reveal.is-image-visible{clip-path:inset(0)}body:not(.ve-mode) .parallax-image{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.08);will-change:transform}.work-module:hover .parallax-image{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.13)}

/* Opening choreography for the first screen, after the curtains part. */
.motion-ready:not(.motion-entered) .site-header{opacity:0;transform:translate(-50%,-36px) scaleX(.88)}.motion-ready:not(.motion-entered) .hero-copy{opacity:0;transform:translateX(90px)}.motion-ready:not(.motion-entered) .hero-portrait{opacity:0;clip-path:inset(0 100% 0 0);transform:translateX(-65px) scale(.94)}.motion-ready:not(.motion-entered) .hero-stats{opacity:0;transform:translateY(38px) scaleX(.9)}.motion-ready:not(.motion-entered) .hero-career{opacity:0;transform:translateY(55px)}.motion-ready.motion-entered .site-header{transition:opacity 1s ease,transform 1.15s cubic-bezier(.16,1,.3,1),top .3s,height .3s,background .3s}.motion-ready.motion-entered .hero-copy{transition:opacity 1s .08s ease,transform 1.25s .08s cubic-bezier(.16,1,.3,1)}.motion-ready.motion-entered .hero-portrait{transition:opacity 1s ease,transform 1.3s cubic-bezier(.16,1,.3,1),clip-path 1.35s cubic-bezier(.16,1,.3,1)}.motion-ready.motion-entered .hero-stats{transition:opacity .9s .3s ease,transform 1.1s .3s cubic-bezier(.16,1,.3,1)}.motion-ready.motion-entered .hero-career{transition:opacity .9s .46s ease,transform 1.15s .46s cubic-bezier(.16,1,.3,1)}.motion-ready.motion-entered .site-header,.motion-ready.motion-entered .hero-copy,.motion-ready.motion-entered .hero-portrait,.motion-ready.motion-entered .hero-stats,.motion-ready.motion-entered .hero-career{opacity:1;transform:none}.motion-ready.motion-entered .hero-portrait{clip-path:inset(0)}

@media(max-width:980px){.site-header{width:calc(100% - 28px)}.main-nav a{padding:10px 12px}.hero{grid-template-columns:.72fr 1fr;column-gap:40px}.hero-portrait{width:min(38vw,410px)}.hero-career{grid-template-columns:145px 1fr}.career-track{gap:24px}.career-item h3{font-size:15px}.work-modules{grid-template-columns:repeat(2,1fr)}.work-module{height:370px;border-bottom:1px solid var(--line)}.learning-title{grid-template-columns:.4fr 1fr}.learning-title>p:last-child{grid-column:2}.strength-card{grid-column:span 6}.strength-card.strength-featured{grid-column:span 6}.timeline-card{height:auto;min-height:360px}.timeline-card ul{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:48px}}

@media(max-width:720px){
  html{scroll-padding-top:78px}.site-header{top:10px;height:58px;padding:0 11px 0 13px}.brand{font-size:11px}.brand-avatar{width:32px;height:32px}.header-resume{padding:9px 11px;font-size:10px}.menu-toggle{display:block;position:relative;z-index:3}.menu-toggle span{display:block;width:20px;height:1px;margin:6px;background:currentColor;transition:.25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .main-nav{position:fixed;inset:0;background:rgba(250,246,239,.96);backdrop-filter:blur(22px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:12vw;transform:translateX(110%);transition:.4s}.main-nav.is-open{transform:none}.main-nav a{font:650 29px var(--display);padding:12px 18px}.header-resume{margin-left:auto;margin-right:4px}
  .hero{min-height:auto;padding:105px 22px 55px;display:flex;flex-direction:column;align-items:stretch}.hero-copy{order:1}.hero h1{font-size:clamp(57px,16vw,78px)}.hero-portrait{order:2;width:80vw;max-width:350px;margin:55px auto 15px}.hero-stats{order:3;grid-template-columns:repeat(2,1fr);gap:0}.hero-stats>span{min-height:68px;padding:10px 7px;justify-content:flex-start}.hero-stats>span+span{border-left:0}.hero-stats>span:nth-child(even){border-left:1px solid var(--line)}.hero-stats>span:nth-child(n+3){border-top:1px solid var(--line)}.hero-career{order:4;display:block;margin-top:8px;padding:24px 20px}.career-heading{margin-bottom:22px}.career-track{grid-template-columns:1fr;gap:24px}.career-track::before{left:5px;right:auto;top:0;bottom:0;width:1px;height:auto}.career-item{padding:0 0 0 27px}.career-item::before{left:0;top:3px}.career-item>span{line-height:1.6}.scroll-more{display:none}.hero-contact{flex-direction:column;gap:7px}.hero-actions{flex-direction:column}.button{width:100%}
  .section{padding:76px 22px}.section-heading.centered h2{font-size:43px}.timeline{margin-top:50px;padding-left:26px}.timeline::before{left:8px}.timeline-no{left:-26px;width:31px;height:31px;box-shadow:0 0 0 5px var(--paper)}.timeline-card{height:auto;min-height:0;padding:28px 22px}.timeline-card h3{min-height:0;font-size:23px}.timeline-card ul{grid-template-rows:none;grid-auto-rows:auto;row-gap:12px}.timeline-card li{height:auto;min-height:38px;font-size:11px}
  .work{padding-inline:22px}.work .section-heading{display:block}.work .section-heading h2{font-size:48px;margin-top:14px}.work .section-heading>p{margin-top:18px}.work-modules{grid-template-columns:1fr}.work-module{height:310px}.work-module,.learning-card{--glow-padding:18px}.module-copy h3{font-size:27px}.writing-number{font-size:74px}.visual-rings i:nth-child(1){width:130px;height:130px}
  .learning{padding-inline:22px}.learning-title{display:block}.learning-title h2{font-size:50px;margin:16px 0}.learning-grid,.strengths-grid{grid-template-columns:1fr}.learning-card,.strength-card,.strength-card.strength-featured{grid-column:auto;min-height:285px}.learning-contact{align-items:flex-start;flex-direction:column;padding:25px}.learning-contact-links{align-items:flex-start}.learning footer{margin-top:25px}
  .contact-dialog-inner{padding:44px 24px 24px}.contact-dialog h2{font-size:34px}.contact-dialog-list{margin-top:25px}.contact-dialog-list>*{grid-template-columns:48px 1fr 18px;min-height:52px;gap:9px}.contact-dialog-close{right:12px;top:12px}
  .detail-hero{min-height:78vh;padding:85px 22px 36px;justify-content:flex-start}.detail-hero-project,.detail-hero-writing{min-height:60vh;justify-content:center}.detail-hero h2,.detail-hero-event h2,.detail-hero-event>p:last-child,.detail-hero-visual h2,.detail-hero-visual>p:last-child{max-width:100%}.detail-hero h2{font-size:50px}.detail-image-panel{position:relative;right:auto!important;top:auto;width:100%!important;height:245px;margin-top:28px;order:5;transform:none!important}.detail-decor{right:20px;top:74px;opacity:.75}.detail-abstract strong{top:22%;font-size:30vw}.detail-hero-project .detail-decor,.detail-hero-writing .detail-decor{right:18px;top:68%}.detail-body{padding:45px 22px 60px}.detail-divider{gap:8px;margin-bottom:25px}.download-panel{align-items:flex-start;flex-direction:column;margin-bottom:38px}.download-links{justify-content:flex-start}.detail-grid{grid-template-columns:1fr;gap:12px}.detail-item{min-height:0}.detail-gallery{grid-template-columns:1fr;margin-top:38px}.detail-gallery img,.gallery-star-card img{height:auto;max-height:580px}.dialog-close{right:14px;top:14px}
}

/* Final motion overrides and dynamic project-detail choreography. */
.motion-ready.motion-entered .site-header{opacity:1!important;transform:translateX(-50%)!important}.work-dialog[open] .detail-kicker{animation:detail-copy-in .8s .16s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .detail-gradient-text{animation:gradient-text-flow 3s linear infinite alternate,detail-title-in 1.15s .08s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .detail-hero>p:last-child{animation:detail-copy-in 1s .32s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .detail-image-panel,.work-dialog[open] .detail-abstract{animation:detail-media-in 1.25s .12s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .download-panel{animation:detail-copy-in 1s .38s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .detail-item{animation:detail-card-in 1s both cubic-bezier(.16,1,.3,1)}.work-dialog[open] .detail-item:nth-child(1){animation-delay:.46s}.work-dialog[open] .detail-item:nth-child(2){animation-delay:.56s}.work-dialog[open] .detail-item:nth-child(3){animation-delay:.66s}.work-dialog[open] .detail-item:nth-child(4){animation-delay:.76s}@keyframes detail-title-in{from{opacity:0;transform:translateY(90px) scaleX(.68);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes detail-copy-in{from{opacity:0;transform:translateY(38px)}to{opacity:1;transform:none}}@keyframes detail-media-in{from{opacity:0;transform:translateX(90px) scale(.94);clip-path:inset(0 0 0 100%)}to{opacity:1;clip-path:inset(0)}}@keyframes detail-card-in{from{opacity:0;transform:translateY(65px) scale(.97)}to{opacity:1;transform:none}}body.ve-mode .opening-sequence{display:none}body.ve-mode .reveal,body.ve-mode .section-motion-title,body.ve-mode .image-reveal{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}body.ve-mode .parallax-image{transform:none!important;will-change:auto}

@media(max-width:720px){.hero h1{font-size:clamp(52px,14vw,72px);white-space:normal}.strength-art{right:18px;top:22px;transform:scale(.88);transform-origin:top right}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.opening-sequence{display:none!important}.star-trail{animation:none;opacity:.22}.star-border-card:hover,.hero-career:hover .career-item::before,.learning-contact:hover .learning-contact-links,.detail-item:hover h3,.hero-portrait:hover .portrait-frame,.hero-portrait:hover .portrait-frame img{transform:none}.portrait-frame::after{display:none}.motion-ready .reveal,.motion-ready .section-motion-title,.motion-ready .image-reveal,.motion-ready:not(.motion-entered) .site-header,.motion-ready:not(.motion-entered) .hero-copy,.motion-ready:not(.motion-entered) .hero-portrait,.motion-ready:not(.motion-entered) .hero-stats,.motion-ready:not(.motion-entered) .hero-career{opacity:1;transform:none;clip-path:none;transition:none}.work-module img,body:not(.ve-mode) .parallax-image{transition:none;transform:none}.animated-gradient-text{animation:none;background-position:50% 50%}}

@media(max-width:980px){.detail-body-visual .download-links{grid-template-columns:repeat(2,minmax(0,200px))}}
@media(max-width:720px){.detail-body-visual .download-panel>div:first-child{flex-basis:auto}.detail-body-visual .download-links{grid-template-columns:1fr;justify-content:start}.detail-body-visual .download-link{width:min(100%,200px)!important;height:42px!important}}

/* Home alignment: one shared grid and consistent component edges. */
@media(min-width:721px){
  .hero{align-items:start;row-gap:24px}
  .hero-copy{width:100%;min-width:0;align-self:start}
  .hero-intro{width:100%;max-width:650px}
  .hero-portrait{justify-self:start;align-self:start}
  .personal-tags,.hero-actions{align-items:center}
  .hero-actions .button{min-height:46px}
  .hero-stats{width:100%;align-self:end;grid-template-columns:repeat(4,minmax(0,1fr))}
  .hero-stats>span{min-width:0;padding-inline:18px}
  .hero-stats>span:first-child{padding-left:0}
  .hero-stats>span+span{padding-left:18px}
  .hero-stats .stat-label{white-space:nowrap}
  .hero-career{width:100%;grid-template-columns:190px minmax(0,1fr)}
  .career-track{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .career-item{min-width:0}
}

#strengths .strength-card>strong{position:absolute;left:25px;right:25px;bottom:47px;width:auto;height:auto;margin:0;line-height:1.5}
#strengths .strength-card>b{position:absolute;left:25px;right:25px;bottom:22px;width:auto;height:auto;margin:0;line-height:1.5}
