@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;700;800&family=Sora:wght@600;700;800&display=swap";:root{font-family:Manrope,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(1000px 400px at -10% -10%,rgba(26,170,222,.22),transparent),radial-gradient(1000px 400px at 110% 120%,rgba(42,255,175,.14),transparent),#030d16}#root{min-height:100vh}.page-shell{--bg-main: #041522;--bg-soft: #0a2234;--line: #1a3a52;--text: #eff8ff;--muted: #92aec2;--accent: #26d4ff;--accent-2: #22f2be;--card: rgba(11, 30, 45, .76);position:relative;margin:0 auto;width:min(1140px,92%);padding:3.5rem 0 3rem;color:var(--text)}.bg-orb{position:absolute;border-radius:999px;filter:blur(74px);opacity:.22;pointer-events:none;z-index:-1}.bg-orb-top{top:-8rem;left:-3rem;width:26rem;height:26rem;background:radial-gradient(circle,#22f2be,transparent 68%);animation:floatTop 7s ease-in-out infinite}.bg-orb-bottom{right:-3rem;bottom:9rem;width:23rem;height:23rem;background:radial-gradient(circle,#1c8cc7,transparent 68%);animation:floatBottom 8s ease-in-out infinite}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:2.8rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--accent);font-weight:700;margin-bottom:.8rem}.hero h1{margin:0;font-family:Sora,Trebuchet MS,sans-serif;font-size:clamp(2rem,6vw,3.4rem);line-height:1.05;max-width:18ch}.hero-description{margin:1.1rem 0 1.3rem;color:var(--muted);max-width:58ch;line-height:1.65}.hero-services{margin:.3rem 0 0;padding:0;list-style:none;display:grid;gap:.9rem}.hero-services li{border-left:2px solid var(--accent);padding-left:.7rem;color:#cfe4f2}.hero-cta{margin-top:1.6rem;display:flex;gap:.9rem;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:999px;padding:.82rem 1.4rem;text-decoration:none;font-weight:700;transition:transform .19s ease,box-shadow .19s ease,background .19s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#03131f;background:linear-gradient(130deg,var(--accent),var(--accent-2));box-shadow:0 10px 20px #22f2be3d}.btn-secondary{border-color:#356a84;background:#0c2436b3;color:#d7efff}.hero-visual{position:relative}.hero-visual img{width:100%;height:auto;display:block;border-radius:22px;border:1px solid var(--line);box-shadow:0 26px 50px #00000073}.quick-info{margin-top:.9rem;display:flex;justify-content:space-between;gap:.4rem;flex-wrap:wrap}.quick-info p{margin:0;display:inline-flex;align-items:center;gap:.42rem;color:#b7d7e9;border:1px solid #264f69;border-radius:999px;padding:.34rem .7rem;background:#041724e0;font-size:.86rem}.quick-icon{color:#58ecff;font-size:.88rem}.panel{margin-top:2.6rem;background:linear-gradient(145deg,#081d2ceb,#051825a8);border:1px solid var(--line);border-radius:20px;padding:1.65rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel-header h2,.contact-strip h2{margin:0;font-family:Sora,Trebuchet MS,sans-serif;font-size:1.5rem;text-transform:uppercase;letter-spacing:.06em;background:linear-gradient(120deg,#fff 5%,#7ce9ff 55%,#7dffc8);-webkit-background-clip:text;background-clip:text;color:transparent}.panel-header p{margin:.5rem 0 0;color:var(--muted)}.xp-grid{margin-top:1.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.xp-card{background:var(--card);border:1px solid #1d4762;border-radius:14px;padding:1.2rem}.xp-card h3{margin:0;font-size:1.04rem;text-transform:uppercase;letter-spacing:.04em;color:#8df6ff;text-shadow:0 0 22px rgba(38,212,255,.2)}.xp-card p{margin:.6rem 0 0;color:#aacadd}.xp-card .xp-period{margin-top:.48rem;color:#7deed8;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.services-layout,.skills-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(3,minmax(0,1fr))}.services-layout article,.skill-card{background:#04141fcc;border:1px solid #204a62;border-radius:12px;padding:1.2rem}.services-layout h3,.skill-card h3{position:relative;display:inline-block;margin:0;color:#9ef7ff;font-size:1.01rem;text-shadow:0 0 18px rgba(36,206,255,.18)}.services-layout h3:after,.skill-card h3:after,.xp-card h3:after{content:"";display:block;width:56px;height:2px;margin-top:.45rem;border-radius:999px;background:linear-gradient(90deg,#2ee0ff,#73ffd0)}.services-layout p,.skill-card p{margin:.6rem 0 0;color:#a8c7d8;line-height:1.6}.tech-gallery{margin-top:1.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.tech-image-card{margin:0;border-radius:14px;border:1px solid #1d4762;overflow:hidden;background:#04141fcc}.tech-image-card img{width:100%;height:190px;object-fit:cover;display:block}.tech-image-card figcaption{padding:.8rem .9rem .95rem;color:#d3f3ff;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:700}.skill-list{margin:.95rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.58rem}.skill-item{display:inline-flex;align-items:center;gap:.45rem;border:1px solid #2a5e79;border-radius:999px;padding:.36rem .7rem;color:#d9eef8;background:#03121cd6;font-size:.84rem}.skill-icon{color:#56ebff;font-size:1rem;flex-shrink:0}.contact-strip{margin-top:2.6rem;border-radius:20px;border:1px solid #28536c;background:linear-gradient(125deg,#092235f2,#081b28cc);padding:1.7rem}.contact-strip p{margin:.7rem 0 0;color:#b0cfdf}.contact-strip span{color:#90f8da;font-weight:700}.reveal-on-scroll{opacity:0;transform:translateY(38px) scale(.98);filter:blur(2px);transition:opacity .72s ease,transform .72s cubic-bezier(.22,1,.36,1),filter .72s ease;transition-delay:var(--reveal-delay, 0ms)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.reveal-on-scroll,.reveal-on-scroll.is-visible{opacity:1;filter:none;transform:none;transition:none}}@keyframes floatTop{0%,to{transform:translate(0)}50%{transform:translate(12px,-10px)}}@keyframes floatBottom{0%,to{transform:translate(0)}50%{transform:translate(-12px,8px)}}@media(max-width:970px){.hero{grid-template-columns:1fr}.hero-visual{max-width:420px}.xp-grid,.tech-gallery,.services-layout,.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.page-shell{padding-top:2.4rem}.panel,.contact-strip{margin-top:2rem}.hero h1{font-size:clamp(1.8rem,9vw,2.4rem)}.xp-grid,.tech-gallery,.services-layout,.skills-grid{grid-template-columns:1fr}}
