/* Refined rhythm, device sizing and portrait-led motion. */
.hero{min-height:450px;padding-top:22px;padding-bottom:31px;column-gap:24px}.hero h1{line-height:1.02;margin-top:14px;margin-bottom:12px;letter-spacing:-1.6px}.hero-text{line-height:1.62}.hero-points{margin-top:25px}.section{padding-top:46px;padding-bottom:46px}.section-heading{margin-bottom:20px}.section-heading p,.section-intro{line-height:1.5}.service-grid{gap:10px}.service-card{padding:13px;min-height:116px}.service-card h3{margin:8px 0 4px;font-size:11px}.service-card p{font-size:9px;line-height:1.4}.projects-section .section{padding-top:44px;padding-bottom:44px}.project-grid{gap:12px}.project-card{padding:7px}.project-card h3{font-size:11px}.project-card>p{font-size:9px;line-height:1.4}.why-layout{padding-top:45px;padding-bottom:45px}.process-section .section{padding-top:43px;padding-bottom:46px}.about-layout{padding-top:46px;padding-bottom:46px}.about-photo{height:224px}.about-photo>img{object-fit:contain;object-position:center bottom}.photo-note{font-size:8px;top:23px;left:-6px}.hero-portrait{right:21%;max-width:80%;object-fit:contain;object-position:center bottom;animation:portraitArrive .9s cubic-bezier(.2,.75,.25,1) both,portraitDrift 7s ease-in-out 1s infinite}.signature{right:1%;top:33px;align-items:flex-start;padding:11px 13px 9px 15px;border:1px solid #fff;border-radius:9px;background:#ffffffeb;box-shadow:0 8px 26px #2443771b;animation:badgeArrive .72s cubic-bezier(.18,.74,.24,1) .22s both,badgeDrift 5.5s ease-in-out 1s infinite}.signature b{font-size:15px;letter-spacing:-.2px}.signature small{font-size:8px}.signature i{align-self:flex-end;font-size:19px;margin-top:0;color:var(--blue)}.signature-spark{position:absolute;right:-7px;top:-8px;color:#f2b942;font-size:12px;animation:sparkle 2.8s ease-in-out 1.5s infinite}.hero-note{right:0;bottom:34px;animation:noteArrive .72s cubic-bezier(.18,.74,.24,1) .4s both,noteDrift 6.4s ease-in-out 1.2s infinite}.shape-one{animation:shapeArrive .7s ease-out .3s both,shapeDrift 6s ease-in-out 1s infinite}.shape-two{animation:shapeArrive .7s ease-out .48s both,shapeDrift 5.3s ease-in-out 1.2s infinite reverse}.hero-blob{animation:blobReveal 1s ease-out both}.code-chip{animation:codePulse 4.5s ease-in-out 1.6s infinite}.hero-visual{isolation:isolate}.signature,.hero-note,.floating-shape,.code-chip{will-change:transform,opacity}.hero-note small{font-size:8px;line-height:1.35}.contact-brand p,.project-card>p{line-height:1.45}.skills>div{margin:8px 0}
@keyframes portraitArrive{from{opacity:0;translate:0 18px;scale:.985}to{opacity:1;translate:0 0;scale:1}}@keyframes portraitDrift{0%,100%{translate:0 0}50%{translate:0 -4px}}@keyframes badgeArrive{from{opacity:0;translate:16px 0}to{opacity:1;translate:0 0}}@keyframes badgeDrift{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes noteArrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes noteDrift{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes shapeArrive{from{opacity:0;scale:.6}to{opacity:1;scale:1}}@keyframes shapeDrift{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:4deg}}@keyframes blobReveal{from{opacity:0;scale:.92}to{opacity:1;scale:1}}@keyframes sparkle{0%,100%{transform:rotate(0) scale(1);opacity:.75}50%{transform:rotate(22deg) scale(1.2);opacity:1}}@keyframes codePulse{0%,100%{box-shadow:0 0 0 0 #4f6cf000}50%{box-shadow:0 0 0 5px #4f6cf022}}
@media(max-width:900px){.hero{min-height:405px;column-gap:14px}.hero h1{font-size:38px}.hero-visual{height:340px}.hero-portrait{right:18%;max-width:82%}.signature{right:0}.service-card{min-height:124px}.project-image{height:132px}.about-photo{height:198px}}
@media(max-width:560px){.hero{padding-top:30px;padding-bottom:23px;gap:6px}.hero h1{font-size:37px;line-height:1.03;letter-spacing:-1.45px;margin:13px 0 10px}.hero-text{font-size:11px;line-height:1.55}.hero-visual{height:270px;margin-top:4px}.hero-portrait{height:100%;max-width:78%;right:23%}.signature{top:19px;right:0;padding:9px 10px 7px 12px}.signature b{font-size:13px}.signature small{font-size:7px}.signature i{font-size:16px}.hero-note{right:0;bottom:17px;padding:8px}.hero-note small{font-size:7px}.shape-two{right:4%;top:99px}.hero-points{margin-top:18px}.section{padding-top:35px;padding-bottom:35px}.section-heading h2,.why-layout h2{line-height:1.12;letter-spacing:-.55px}.service-card{min-height:113px;padding:10px}.service-card h3{font-size:10px}.service-card p{font-size:8px}.projects-section .section{padding-top:35px;padding-bottom:35px}.project-card>p{font-size:8px;line-height:1.38}.about-layout{padding-top:36px;padding-bottom:36px}.about-photo{height:170px}.photo-note{top:16px;font-size:7px}.process-section .section{padding-top:34px;padding-bottom:35px}.hero-portrait{animation:portraitArrive .8s ease-out both,portraitDrift 7s ease-in-out 1s infinite}.feedback-section .section{padding-top:26px;padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-portrait,.signature,.signature-spark,.hero-note,.floating-shape,.hero-blob,.code-chip{animation:none!important;translate:0!important;transform:none!important;opacity:1!important;scale:1!important}}
