/* Glass, light and restrained motion for the AI portfolio. */
:root{--glass-edge:rgba(207,246,220,.25);--ice:#8bded5}
.header{position:relative;z-index:3;background:#101b1c;border-bottom-color:rgba(205,237,227,.13)}
.hero{background:transparent;isolation:isolate}
.hero:before{background:#101b1c}
.hero-atmosphere{position:absolute;inset:0 calc((100vw - 100%)/-2);z-index:-1;overflow:hidden;pointer-events:none}
.hero-atmosphere:before{content:'';position:absolute;inset:-20%;background:radial-gradient(ellipse at 79% 42%,rgba(78,184,168,.24),transparent 34%),radial-gradient(ellipse at 56% 100%,rgba(172,221,86,.12),transparent 38%);animation:ambient-drift 16s ease-in-out infinite alternate;animation-play-state:paused}
.hero-atmosphere:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(158,209,193,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(158,209,193,.055) 1px,transparent 1px);background-size:66px 66px;mask-image:linear-gradient(90deg,transparent 20%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000 100%)}
.hero-top{position:relative;z-index:2}
.availability{background:rgba(29,53,44,.58);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-color:rgba(208,247,132,.27)}
.hero-grid{grid-template-columns:minmax(0,1fr) 355px;gap:70px;padding-top:50px;padding-bottom:55px}
.hero-copy{position:relative;z-index:2;min-width:0}
.hero h1 em{color:#d6f782;text-shadow:0 0 45px rgba(190,232,124,.12)}
.hero .lead{color:#c0d0cb}
.profile-stage{position:relative;perspective:1100px;isolation:isolate;padding:36px 12px;min-width:0}
.profile-stage:before,.profile-stage:after{content:'';position:absolute;border:1px solid rgba(166,233,215,.18);border-radius:18px;pointer-events:none;background:linear-gradient(130deg,rgba(181,239,218,.08),rgba(24,60,48,.02));box-shadow:0 22px 80px rgba(0,0,0,.1);inset:44px 0;z-index:-1}
.profile-stage:before{transform:translate(12px,-8px) rotate(7deg)}
.profile-stage:after{transform:translate(-8px,12px) rotate(-6deg);border-color:rgba(206,235,153,.14)}
.profile-float{animation:profile-float 7s ease-in-out infinite;animation-play-state:paused}
.profile-card{transform:rotate(-2deg);border-radius:16px;border-color:rgba(203,244,222,.38);background:linear-gradient(135deg,rgba(64,92,81,.58),rgba(20,37,33,.8));box-shadow:0 35px 70px -25px #0009,inset 0 1px 0 #e6ffee22;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.profile-top{grid-template-columns:130px minmax(0,1fr)}
.profile-top img{border-bottom-right-radius:30px;filter:saturate(.85)}
.profile-caption{padding:22px 16px}
.profile-caption>span{color:#c0d5cb}
.profile-caption strong{font-size:19px}
.profile-statement{padding:30px 24px;font-size:27px;border-color:#d2f6e522}
.profile-bottom{background:#0f242340;border-color:#d2f6e522;padding:21px 24px;font-size:13px}
.profile-bottom span{color:#bdd0c5}
.glass-label{position:absolute;z-index:2;max-width:calc(100% - 18px);padding:10px 14px;border-radius:9px;border:1px solid #c5edd53d;background:rgba(24,52,46,.76);box-shadow:0 12px 30px #0003;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);font-size:12px;letter-spacing:1.2px;color:#d6eddf;line-height:1.6;pointer-events:none}
.glass-label-top{top:10px;right:1px;transform:rotate(3deg);animation:label-float 8s ease-in-out -3s infinite;animation-play-state:paused}
.glass-label-bottom{bottom:9px;left:0;color:var(--lime);transform:rotate(-2deg);animation:label-float 9s ease-in-out -1s infinite;animation-play-state:paused}
.hero-bottom{flex-wrap:wrap;position:relative;z-index:2;gap:15px 22px;border-color:#c6e5d922}
.motion-toggle{font:500 12px 'DM Sans',Arial,sans-serif;line-height:1.4;color:#dce9e1;border:1px solid #bfe9d938;border-radius:30px;background:#c1e8d90a;padding:10px 14px;min-height:44px;cursor:pointer;display:inline-flex;gap:9px;align-items:center}
.motion-toggle[hidden]{display:none}
.motion-toggle:before{content:'Ⅱ';font-size:14px;color:var(--lime)}
html[data-motion='off'] .motion-toggle:before{content:'▷'}
.motion-toggle:hover{background:#d6f782;color:#101b1c}
.motion-toggle:hover:before{color:inherit}
.motion-toggle:focus-visible{outline:3px solid #d6f782;outline-offset:4px}
.proof-bar{background:linear-gradient(105deg,#e5eee9,#f4f7ed);box-shadow:0 -1px 0 #cdecdf40;position:relative}
.work-section{background:radial-gradient(ellipse at 97% 35%,#d9ebe3 0,transparent 48%),linear-gradient(140deg,#eef3f0,#e8eeeb);position:relative}
.featured-project{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#172a26,#122326 75%);border:1px solid #648b782e;border-radius:18px;box-shadow:0 24px 55px -35px #12362988}
.featured-project:before{content:'';position:absolute;width:85%;height:100%;right:-20%;top:-35%;background:radial-gradient(ellipse,#5ba69529,transparent 65%);pointer-events:none;z-index:-1}
.project-description>h3{letter-spacing:-2px}
.pipeline-panel{background:linear-gradient(130deg,#9bd1b413,#071b184d);border:1px solid #a5d8b947;border-radius:13px;box-shadow:0 20px 42px -25px #000b,inset 0 1px 0 #d2ffe019;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transform:perspective(1000px) rotateY(-3deg);transition:transform .4s ease,border-color .4s ease}
.pipeline-panel:hover{transform:perspective(1000px) rotateY(0deg);border-color:#bddd9b88}
.pipeline li{isolation:isolate;background:#0b231fa6;border-color:#6c9b754d;border-radius:7px;box-shadow:0 6px 16px #00000012}
.pipeline li:before{content:'';position:absolute;inset:-1px;z-index:-1;pointer-events:none;border-radius:inherit;border:1px solid #d6f78299;background:linear-gradient(105deg,#d6f78220,#8bded508);box-shadow:0 0 22px #badb7412;opacity:0;animation:pipeline-flow 10s ease-in-out infinite;animation-play-state:paused}
.pipeline li:nth-child(2):before{animation-delay:2s}
.pipeline li:nth-child(3):before{animation-delay:4s}
.pipeline li:nth-child(4):before{animation-delay:6s}
.pipeline li:not(:last-child):after{color:#91bdb1}
.pipeline p{color:#bfd0c6}
.pipeline strong{font-size:14px}
.evaluation{color:#d6f782;border-top:1px solid #b4dcca24;margin-top:23px;padding-top:16px}
.project-card{background:linear-gradient(135deg,#ffffffbf,#f9fcfac9);border-color:#c7d9ce;border-radius:14px;box-shadow:0 15px 35px -25px #29564344;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.project-card:hover{border-color:#9cb7a2;box-shadow:0 25px 45px -22px #29564340;transform:translateY(-7px)}
.capabilities article{position:relative;padding:24px 20px 22px;border:1px solid #d7e3da;border-radius:12px;background:linear-gradient(145deg,#ffffffa6,#edf3ed80);box-shadow:0 14px 30px -25px #234d3f66;transition:transform .35s ease,box-shadow .35s ease}
.capabilities article:hover{transform:translateY(-5px);box-shadow:0 18px 38px -24px #234d3f66}
.capabilities{gap:22px}
.capabilities .number{border:1px solid #cbd8cb;background:#ebf2e6;border-radius:5px;padding:4px 7px;display:inline-block;color:#506746}
.tags span{background:#ecf4ec5c}
.featured-project .tags span{background:#abdda309}
.learning-section{background:linear-gradient(115deg,#e5efdb,#dfede7)}
.qualification{background:#ffffff50;border:1px solid #adbea866;border-radius:10px;padding:22px;box-shadow:inset 0 1px 0 #ffffff91}
.writing-grid>a{transition:transform .3s ease}
.writing-grid>a:hover{transform:translateY(-4px)}
.contact-section{background:radial-gradient(ellipse at 15% 100%,#254637 0,transparent 50%),radial-gradient(ellipse at 100% 0,#193c3c 0,transparent 55%),#101b1c;position:relative}
.contact-grid>div{padding:30px;border:1px solid #c4e7d626;border-radius:15px;background:linear-gradient(130deg,#bedccb0d,#eafff105);box-shadow:inset 0 1px 0 #eefff70c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.contact-grid{gap:55px}
.button{box-shadow:0 8px 22px -14px #d6f78280;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.button:hover{box-shadow:0 12px 25px -12px #d6f78270}
.button span{transition:transform .25s ease}
.button:hover span{transform:translate(2px,-2px)}
.contact-option{box-shadow:none;background:#e9fff006}
.motion-enter{animation:section-arrive .7s cubic-bezier(.2,.7,.25,1) both}
html[data-motion='on'] .hero-atmosphere:before,html[data-motion='on'] .profile-float,html[data-motion='on'] .glass-label,html[data-motion='on'] .pipeline-panel.in-view .pipeline li:before{animation-play-state:running}
html[data-motion='off'] .motion-enter{animation:none}
html[data-motion='off']{scroll-behavior:auto}
html[data-motion='off'] *,html[data-motion='off'] *:before,html[data-motion='off'] *:after{animation-play-state:paused!important;transition:none!important}
@keyframes ambient-drift{from{transform:translate(-2%,1%) scale(1)}to{transform:translate(3%,-2%) scale(1.06)}}
@keyframes profile-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes label-float{0%,100%{translate:0 0}50%{translate:0 7px}}
@keyframes pipeline-flow{0%,22%,100%{opacity:0}5%,16%{opacity:1}}
@keyframes section-arrive{from{opacity:.45;translate:0 18px}to{opacity:1;translate:0 0}}
@media(max-width:1100px){.hero-grid{grid-template-columns:minmax(0,1fr) 295px;gap:35px}.profile-top{grid-template-columns:110px minmax(0,1fr)}.profile-caption{padding:22px 12px}.profile-caption strong{font-size:17px}.profile-statement{font-size:23px;padding:25px 20px}.profile-bottom{padding:18px 20px}.contact-grid{gap:35px}.contact-grid>div{padding:24px}}
@media(max-width:800px){.hero-grid{grid-template-columns:minmax(0,1fr) 235px;gap:25px}.profile-top{display:block}.profile-top img{width:100%;height:150px;border-bottom-right-radius:36px}.profile-caption{padding:15px 18px}.profile-statement{font-size:21px;padding:19px}.profile-bottom{padding:16px 19px}.glass-label{font-size:12px;letter-spacing:.6px;padding:8px 10px}.capabilities{gap:15px}.capabilities article{padding:22px 15px}.pipeline-panel{transform:none}.contact-grid{grid-template-columns:1fr 1fr;gap:25px}.contact-grid h2{font-size:37px}.contact-grid>div{padding:22px}.hero-bottom>span{flex-basis:100%}}
@media(max-width:600px){.hero-grid{grid-template-columns:1fr;gap:22px;padding:35px 0 32px}.profile-stage{width:100%;max-width:380px;margin:auto;padding:38px 8px;perspective:none}.profile-card{display:grid;grid-template-columns:1.1fr 1fr;transform:rotate(-1deg);border-radius:13px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.profile-top{display:flex;grid-row:span 2}.profile-top img{width:72px;height:148px;object-position:50% 30%;border-bottom-right-radius:0}.profile-caption{padding:8px}.profile-caption strong{font-size:15px}.profile-statement{font-size:17px;padding:18px 10px 5px;border:0}.profile-bottom{padding:5px 10px 17px;font-size:12px;border:0;background:none}.profile-stage:before,.profile-stage:after{inset:43px 12px;transform:rotate(3deg)}.profile-stage:after{transform:rotate(-4deg)}.glass-label-top{right:8px;top:9px}.glass-label-bottom{bottom:10px;left:8px}.hero-atmosphere:before{inset:0;animation:none;background:radial-gradient(ellipse at 85% 70%,#4385763b,transparent 60%)}.hero-atmosphere:after{background-size:50px 50px}.hero-bottom{gap:10px 15px}.hero-bottom>a{flex:1;min-width:150px}.motion-toggle{font-size:12px;padding:10px 12px}.profile-float{animation-name:mobile-float}.glass-label{animation:none;backdrop-filter:none;background:#213f37}.profile-float{animation-duration:8s}.featured-project{border-radius:14px}.pipeline-panel{backdrop-filter:none;background:#19352b80}.project-card:hover,.capabilities article:hover,.writing-grid>a:hover{transform:none}.capabilities article{padding:24px}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-grid>div{padding:24px 20px}.contact-grid h2{font-size:40px}.contact-options{gap:10px}.contact-grid .contact-options .button{gap:18px;padding:13px}.motion-enter{animation-duration:.5s}}
@keyframes mobile-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.profile-card,.pipeline-panel,.project-card:hover,.capabilities article:hover,.writing-grid>a:hover{transform:none}.motion-enter{opacity:1;translate:none}}
@media print{.hero-atmosphere,.glass-label,.motion-toggle{display:none!important}.profile-card,.pipeline-panel{transform:none}.motion-enter{animation:none!important;opacity:1;translate:none}}
