:root{--bg:#050608;--bg-2:#080a0d;--bg-3:#0e1116;--surface:#12161cbd;--surface-strong:#171b22;--surface-soft:#ffffff0b;--text-primary:#f2f4f8;--text-secondary:#8b929e;--text-muted:#626b77;--accent:#6ee7f9;--accent-2:#9da8ff;--accent-3:#c8d1dc;--border:#ffffff14;--border-strong:#ffffff29;--shadow:0 28px 90px #00000061;--container:1700px;--safe-x:clamp(20px, 4vw, 72px);--nav-height:78px;--radius-lg:34px;--radius-md:22px;--radius-sm:14px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-soft:cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{min-width:320px;color:var(--text-primary);background:radial-gradient(circle at 18% 16%, #6ee7f914, transparent 32vw), radial-gradient(circle at 86% 18%, #9da8ff13, transparent 30vw), linear-gradient(180deg, var(--bg), #07090d 42%, #050608 100%);-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;margin:0;font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.5;overflow-x:hidden}body:before{z-index:-1;pointer-events:none;content:"";opacity:.34;background-image:linear-gradient(#ffffff07 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:96px 96px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 12% 72%,#0000);mask-image:linear-gradient(#0000,#000 12% 72%,#0000)}body:after{z-index:-1;pointer-events:none;content:"";opacity:.22;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.32'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0}img,video{max-width:100%;display:block}::selection{color:#041116;background:#6ee7f9d1}.app-shell{isolation:isolate;min-height:100vh}.container{width:min(var(--container), calc(100vw - var(--safe-x) * 2));margin:0 auto}.section{scroll-margin-top:calc(var(--nav-height) + 28px);padding:clamp(104px,12vw,190px) 0;position:relative}.section-kicker{color:var(--accent-3);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:18px;font-size:12px;font-weight:600;display:inline-flex}.section-kicker:before{content:"";background:linear-gradient(90deg, var(--accent), transparent);width:38px;height:1px}.section-heading{letter-spacing:-.075em;max-width:920px;margin:0;font-size:clamp(38px,5.6vw,96px);font-weight:520;line-height:.95}.section-copy{max-width:720px;color:var(--text-secondary);margin:28px 0 0;font-size:clamp(16px,1.45vw,20px);line-height:1.82}.reveal{opacity:0;transition:opacity .9s var(--ease-out), transform .9s var(--ease-out);transition-delay:var(--delay,0s);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translate(0,0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}@media (width<=980px){:root{--nav-height:68px}.section{padding:88px 0}}@media (width<=640px){:root{--safe-x:18px}.section-heading{letter-spacing:-.045em}}.navbar{z-index:50;width:100%;height:var(--nav-height);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#050608c7,#0506086b);border-bottom:1px solid #ffffff0e;position:fixed;top:0;left:0}.navbar__inner{justify-content:space-between;align-items:center;height:100%;display:flex}.navbar__brand{min-width:180px;color:var(--text-primary);letter-spacing:.04em;align-items:center;gap:13px;display:inline-flex}.navbar__brand span:last-child{gap:2px;display:grid}.navbar__brand strong{text-transform:uppercase;font-size:13px;font-weight:650;line-height:1}.navbar__brand em{color:var(--text-muted);letter-spacing:.22em;text-transform:uppercase;font-size:11px;font-style:normal;line-height:1}.navbar__mark{background:radial-gradient(circle at 42% 35%,#6ee7f975,#0000 25%),#ffffff06;border:1px solid #fff3;border-radius:50%;width:30px;height:30px;position:relative}.navbar__mark:after{content:"";border:1px solid #ffffff38;position:absolute;inset:8px;transform:rotate(45deg)}.navbar__links{background:#ffffff06;border:1px solid #ffffff0e;border-radius:999px;align-items:center;gap:clamp(18px,2.6vw,42px);padding:0 18px;display:flex}.navbar__links a{color:var(--text-secondary);letter-spacing:.14em;text-transform:uppercase;transition:color .26s var(--ease-soft);padding:12px 0;font-size:12px;font-weight:600;position:relative}.navbar__links a:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:0;height:1px;transition:opacity .26s var(--ease-soft), transform .26s var(--ease-soft);position:absolute;bottom:7px;left:0;right:0;transform:scaleX(.3)}.navbar__links a:hover{color:var(--text-primary)}.navbar__links a:hover:after{opacity:1;transform:scaleX(1)}.hero{background:#030406;place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.hero__media,.hero__video,.hero__fallback,.hero__veil,.hero__scanline{position:absolute;inset:0}.hero__media{z-index:-3;height:112%}.hero__video{object-fit:cover;opacity:.58;filter:saturate(.72)contrast(1.12)brightness(.64);width:100%;height:100%}.hero__fallback{z-index:-1;background:linear-gradient(118deg,#6ee7f917,#0000 28%),radial-gradient(circle at 62% 42%,#c8d1dc24,#0000 18%),radial-gradient(circle at 35% 70%,#9da8ff1c,#0000 28%),linear-gradient(135deg,#050608 0%,#10141a 46%,#050608 100%)}.hero__fallback:before{content:"";opacity:.52;animation:quietDrift 14s var(--ease-soft) infinite alternate;background:linear-gradient(145deg,#ffffff1f,#6ee7f908);border:1px solid #ffffff14;border-radius:42% 58% 45% 55%;position:absolute;inset:12% 8% 10% 42%;transform:rotate(-12deg);box-shadow:inset 0 0 80px #ffffff0d,0 60px 160px #00000085}.hero__veil{z-index:-2;background:linear-gradient(90deg,#050608e0,#05060866 46%,#050608d6),linear-gradient(#050608a8,#0506082e 44%,#050608e6)}.hero__scanline{z-index:-1;opacity:.18;background-image:linear-gradient(#ffffff0a 1px,#0000 1px);background-size:100% 4px;-webkit-mask-image:linear-gradient(#0000,#000 24%,#0000 82%);mask-image:linear-gradient(#0000,#000 24%,#0000 82%)}.hero__content{z-index:2;padding-top:var(--nav-height);position:relative}.hero__eyebrow{color:var(--accent-3);letter-spacing:.36em;margin:0 0 clamp(18px,2vw,34px);font-size:clamp(12px,.9vw,15px);font-weight:650}.hero__title{letter-spacing:-.085em;text-transform:uppercase;max-width:1180px;margin:0;font-size:clamp(54px,9.2vw,168px);font-weight:500;line-height:.82}.hero__title span{display:block}.hero__title span:nth-child(2){color:#f2f4f8d1}.hero__title span:nth-child(3){color:#0000;-webkit-text-stroke:1px #f2f4f86b}.hero__bottomline{max-width:1280px;color:var(--text-secondary);grid-template-columns:minmax(240px,520px) minmax(240px,620px);gap:clamp(28px,8vw,150px);margin-top:clamp(34px,5.8vw,86px);font-size:clamp(15px,1.2vw,19px);line-height:1.8;display:grid}.hero__bottomline p{margin:0}.floating-cta{z-index:45;color:var(--text-primary);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:transform .3s var(--ease-out), border-color .3s var(--ease-out), background .3s var(--ease-out);background:linear-gradient(135deg,#12161cb8,#ffffff09);border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:18px;padding:14px 18px 14px 22px;display:inline-flex;position:fixed;bottom:clamp(18px,3.4vw,54px);right:clamp(18px,3.6vw,60px);box-shadow:0 18px 54px #00000057}.floating-cta:hover{background:linear-gradient(135deg,#181d24d6,#6ee7f913);border-color:#6ee7f957;transform:translateY(-3px)}.floating-cta span{letter-spacing:.09em;text-transform:uppercase;font-size:13px;font-weight:650}.floating-cta i{color:#041116;background:var(--accent-3);border-radius:50%;place-items:center;width:32px;height:32px;font-style:normal;display:grid}.profile{background:linear-gradient(#05060800,#0e111685 45%,#05060800)}.profile__grid{grid-template-columns:minmax(360px,.78fr) 1.22fr;align-items:center;gap:clamp(48px,7vw,132px);display:grid}.profile__visual{border:1px solid var(--border);border-radius:var(--radius-lg);min-height:760px;box-shadow:var(--shadow);background:#ffffff08;position:relative;overflow:hidden}.profile__visual img{object-fit:cover;width:100%;height:100%;min-height:760px;transform:scale(1.01)}.profile__visual:after{content:"";background:linear-gradient(#0000 40%,#050608c2);position:absolute;inset:0}.profile__visual-caption{z-index:2;color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:end;gap:20px;font-size:12px;display:flex;position:absolute;bottom:28px;left:28px;right:28px}.profile__visual-caption strong{color:var(--text-primary);text-align:right;font-size:13px;font-weight:550}.profile__statement{color:var(--accent-3);border-left:1px solid #6ee7f947;margin:28px 0 0;padding-left:24px;font-size:clamp(17px,1.2vw,21px);line-height:1.8}.profile__contacts{margin-top:clamp(38px,5vw,70px)}.profile__contacts h3{color:var(--text-primary);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:13px;font-weight:650}.profile__contact-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.profile__contact,.metric-card{border:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#ffffff0d,#ffffff05)}.profile__contact{border-radius:var(--radius-sm);min-height:92px;transition:transform .26s var(--ease-out), border-color .26s var(--ease-out), background .26s var(--ease-out);gap:8px;padding:18px;display:grid}.profile__contact:hover{background:linear-gradient(145deg,#ffffff12,#6ee7f907);border-color:#ffffff29;transform:translateY(-2px)}.profile__contact span,.metric-card span{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;font-size:12px}.profile__contact strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:520;overflow:hidden}.profile__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.metric-card{border-radius:var(--radius-md);min-height:128px;padding:22px}.metric-card strong{color:var(--text-primary);letter-spacing:-.06em;margin-bottom:18px;font-size:clamp(34px,3vw,54px);font-weight:500;display:block}.projects__header{grid-template-columns:minmax(0,1fr) minmax(320px,560px);align-items:end;gap:42px;margin-bottom:clamp(46px,6vw,92px);display:grid}.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,34px);display:grid}.project-card{border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform .38s var(--ease-out), border-color .38s var(--ease-out), background .38s var(--ease-out);background:linear-gradient(145deg,#ffffff0d,#ffffff04);overflow:hidden;box-shadow:0 24px 80px #0000003d}.project-card:hover{background:linear-gradient(145deg,#ffffff12,#6ee7f906);border-color:#c8d1dc38;transform:translateY(-8px)}.project-card__media{aspect-ratio:16/10;background:#0b0e13;display:block;position:relative;overflow:hidden}.project-card--1 .project-card__media{aspect-ratio:16/12}.project-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .76s var(--ease-out), filter .76s var(--ease-out)}.project-card:hover .project-card__media img{filter:saturate(1.08)contrast(1.04);transform:scale(1.045)}.project-card__media:after{content:"";background:linear-gradient(#0000 50%,#05060847);position:absolute;inset:0}.project-card__body{padding:clamp(22px,2.2vw,34px)}.project-card__meta,.project-card__footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.project-card__meta{color:var(--text-muted);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:600}.project-card h3{letter-spacing:-.055em;margin:20px 0 16px;font-size:clamp(26px,2.5vw,48px);font-weight:500;line-height:1}.project-card p{min-height:86px;color:var(--text-secondary);margin:0;font-size:15px;line-height:1.78}.project-card__footer{margin-top:30px}.project-card__tags{flex-wrap:wrap;gap:8px;display:flex}.project-card__tags span,.detail__tags span,.skill-card__keywords span{min-height:28px;color:var(--accent-3);letter-spacing:.08em;background:#ffffff06;border:1px solid #ffffff17;border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;display:inline-flex}.project-card__link{color:var(--text-primary);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:12px;font-weight:650}.skills{background:radial-gradient(circle at 50% 30%,#9da8ff14,#0000 30vw),linear-gradient(#ffffff05,#fff0)}.skills__header{max-width:1100px;margin-bottom:clamp(44px,6vw,88px)}.skills__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,30px);display:grid}.skill-card{border:1px solid var(--border);border-radius:var(--radius-lg);min-height:510px;transition:transform .34s var(--ease-out), border-color .34s var(--ease-out), background .34s var(--ease-out);background:linear-gradient(145deg,#ffffff0f,#ffffff05),#12161c8c;padding:clamp(28px,2.8vw,46px);position:relative;overflow:hidden}.skill-card:before{z-index:-1;content:"";opacity:0;transition:opacity .34s var(--ease-out);background:linear-gradient(135deg,#6ee7f92e,#0000 38%,#9da8ff1f);position:absolute;inset:-1px}.skill-card:hover{background:linear-gradient(145deg,#ffffff13,#6ee7f906),#12161cb3;border-color:#6ee7f933;transform:translateY(-7px)}.skill-card:hover:before{opacity:1}.skill-card__index{color:#f2f4f83d;letter-spacing:.18em;font-size:12px;font-weight:650}.skill-card__icon{background:#ffffff07;border:1px solid #ffffff1a;border-radius:24px;place-items:center;width:74px;height:74px;margin:64px 0 42px;display:grid}.skill-card svg{fill:none;width:38px;height:38px;stroke:var(--accent-3);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45px}.skill-card h3{letter-spacing:-.045em;max-width:380px;margin:0 0 20px;font-size:clamp(24px,2vw,36px);font-weight:520;line-height:1.12}.skill-card p{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.82}.skill-card__keywords{flex-wrap:wrap;gap:8px;margin-top:34px;display:flex}.contact-footer{min-height:96vh;scroll-margin-top:var(--nav-height);background:linear-gradient(#05060800,#050608eb 26%,#030405 100%),radial-gradient(circle at 22% 84%,#6ee7f917,#0000 32vw);padding:clamp(108px,12vw,180px) 0 72px;display:grid;position:relative;overflow:hidden}.contact-footer__orb{opacity:.18;filter:blur(1px);background:radial-gradient(circle,#c8d1dc57,#6ee7f90a 34%,#0000 66%);border:1px solid #ffffff1f;border-radius:50%;width:52vw;min-width:520px;height:52vw;min-height:520px;position:absolute;bottom:-18vw;right:-14vw}.contact-footer__grid{grid-template-columns:minmax(0,1fr) minmax(360px,560px);align-items:center;gap:clamp(46px,8vw,132px);display:grid;position:relative}.contact-footer__content h2{letter-spacing:-.085em;max-width:980px;margin:0;font-size:clamp(54px,8vw,148px);font-weight:500;line-height:.88}.contact-footer__content p{max-width:720px;color:var(--text-secondary);margin:34px 0 0;font-size:clamp(17px,1.35vw,21px);line-height:1.8}.contact-footer__links{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:920px;margin-top:54px;display:grid}.contact-footer__links a{border:1px solid var(--border);transition:transform .26s var(--ease-out), border-color .26s var(--ease-out);background:#ffffff07;border-radius:16px;gap:8px;padding:16px;display:grid}.contact-footer__links a:hover{border-color:#ffffff2e;transform:translateY(-2px)}.contact-footer__links span{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.contact-footer__links strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:520;overflow:hidden}.contact-form{border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#fff1,#ffffff05);border:1px solid #ffffff1a;gap:18px;padding:clamp(24px,2.5vw,38px);display:grid}.contact-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.contact-form label{gap:10px;display:grid}.contact-form label span{color:var(--accent-3);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:650}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--text-primary);transition:border-color .24s var(--ease-soft), background .24s var(--ease-soft);background:#03040670;border:1px solid #ffffff17;border-radius:16px;outline:0}.contact-form input,.contact-form select{min-height:54px;padding:0 16px}.contact-form textarea{resize:vertical;padding:16px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{background:#0304069e;border-color:#6ee7f952}.contact-form button{color:#061014;background:linear-gradient(135deg, var(--accent-3), #6ee7f9d1);cursor:pointer;min-height:58px;transition:transform .26s var(--ease-out), filter .26s var(--ease-out);border-radius:999px;justify-content:space-between;align-items:center;padding:0 18px 0 22px;display:inline-flex}.contact-form button:hover{filter:brightness(1.04);transform:translateY(-2px)}.contact-form button span{letter-spacing:.13em;text-transform:uppercase;font-size:13px;font-weight:750}.contact-form button i{font-style:normal}.contact-form__note{color:var(--text-muted);margin:0;font-size:12px}.detail{background:var(--bg);min-height:100vh}.detail__hero{min-height:100vh;padding:calc(var(--nav-height) + 82px) 0 82px;background:radial-gradient(circle at 70% 28%,#6ee7f914,#0000 32vw),linear-gradient(#06070a,#080a0d 70%,#050608);align-items:center;display:grid}.detail__hero-grid{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:center;gap:clamp(42px,7vw,120px);display:grid}.detail__back{color:var(--accent-3);letter-spacing:.14em;text-transform:uppercase;margin-bottom:34px;font-size:12px;font-weight:650;display:inline-flex}.detail h1{letter-spacing:-.075em;margin:0;font-size:clamp(48px,6vw,118px);font-weight:500;line-height:.92}.detail__hero p:not(.section-kicker){max-width:740px;color:var(--text-secondary);margin:28px 0 0;font-size:18px;line-height:1.82}.detail__meta{gap:12px;margin-top:34px;display:flex}.detail__meta span{border:1px solid var(--border);color:var(--accent-3);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:8px 12px;font-size:12px}.detail__cover{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.detail__cover img{aspect-ratio:16/11;object-fit:cover;width:100%}.detail__body-grid{grid-template-columns:minmax(0,1fr) minmax(320px,460px);gap:clamp(36px,6vw,108px);margin-bottom:42px;display:grid}.detail__body h2,.detail__body h3{letter-spacing:-.04em;margin:0 0 18px;font-size:clamp(28px,2.2vw,44px);font-weight:520}.detail__body p{color:var(--text-secondary);margin:0;font-size:17px;line-height:1.86}.detail__tags{flex-wrap:wrap;gap:10px;display:flex}.detail__media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.detail__media{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(145deg,#ffffff0f,#ffffff04),radial-gradient(circle at 62% 38%,#6ee7f914,#0000 34vw);place-items:center;min-height:360px;display:grid}.detail__media--wide{grid-column:1/-1;min-height:560px}.detail__media span{color:var(--text-muted);letter-spacing:.16em;text-transform:uppercase;font-size:12px}.detail__next{padding:0 0 110px}.detail__related{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.detail__related a{border:1px solid var(--border);border-radius:var(--radius-md);transition:transform .26s var(--ease-out), border-color .26s var(--ease-out);background:#ffffff07;gap:12px;padding:30px;display:grid}.detail__related a:hover{border-color:#ffffff29;transform:translateY(-3px)}.detail__related span{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;font-size:12px}.detail__related strong{letter-spacing:-.045em;font-size:clamp(24px,2vw,38px);font-weight:520}.detail--empty{min-height:100vh;padding-top:var(--nav-height);align-items:center;display:grid}.detail--empty h1{max-width:820px}.detail--empty p:not(.section-kicker){color:var(--text-secondary)}@keyframes quietDrift{0%{transform:rotate(-12deg)translate(-1.5%)}to{transform:rotate(-8deg)translate(1.5%,-1%)}}@media (width<=1280px){.profile__grid,.detail__hero-grid{grid-template-columns:.9fr 1.1fr}.profile__contact-grid,.profile__metrics,.contact-footer__links{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-card{min-height:560px}}@media (width<=980px){.navbar__brand{min-width:auto}.navbar__links{gap:16px;padding:0 12px}.navbar__links a{letter-spacing:.08em;font-size:11px}.hero__bottomline,.profile__grid,.projects__header,.skills__grid,.contact-footer__grid,.detail__hero-grid,.detail__body-grid{grid-template-columns:1fr}.profile__visual,.profile__visual img{min-height:560px}.projects__grid,.detail__media-grid,.detail__related{grid-template-columns:1fr}.skill-card{min-height:430px}.skill-card__icon{margin:44px 0 32px}.contact-footer{min-height:auto}}@media (width<=720px){.navbar__links{scrollbar-width:none;justify-content:flex-start;max-width:58vw;overflow-x:auto}.navbar__links::-webkit-scrollbar{display:none}.navbar__brand em{display:none}.hero__title{font-size:clamp(48px,18vw,88px)}.floating-cta{padding:10px 12px 10px 16px;bottom:16px;right:16px}.floating-cta span{font-size:11px}.floating-cta i{width:28px;height:28px}.profile__contact-grid,.profile__metrics,.contact-footer__links,.contact-form__row{grid-template-columns:1fr}.profile__visual,.profile__visual img{min-height:420px}.project-card p{min-height:auto}.project-card__footer{flex-direction:column;align-items:flex-start}.detail__media,.detail__media--wide{min-height:280px}}
