:root{--font-display: "Syne", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--radius: 1rem;--radius-lg: 1.5rem;--space-section: clamp(4rem, 10vw, 7rem);--header-h: 4.25rem}:root,html[data-theme=dark]{color-scheme:dark;--purple: #a78bfa;--purple-deep: #8b5cf6;--purple-muted: #7c6aa6;--link: #c4b5fd;--link-hover: #ddd6fe;--focus-ring: #a78bfa;--accent-soft: #9d8bc9;--gradient-hero: linear-gradient(135deg, #4c1d95 0%, #6d28d9 48%, #5b21b6 100%);--gradient-text: linear-gradient( 105deg, #f5f3ff 0%, #ddd6fe 40%, #a78bfa 72%, #c4b5fd 100% );--bg-deep: #0f0c16;--bg-elevated: #161222;--bg-card: rgba(30, 26, 45, .72);--border-subtle: rgba(167, 139, 250, .14);--border-glow: rgba(167, 139, 250, .32);--text: #eceaf4;--text-muted: #9b92b0;--on-accent: #faf8ff;--body-glow-1: rgba(109, 40, 217, .22);--body-glow-2: rgba(91, 33, 182, .1);--body-glow-3: rgba(139, 92, 246, .12);--shadow-card: 0 20px 50px rgba(0, 0, 0, .4);--shadow-card-hover: 0 24px 56px rgba(0, 0, 0, .45);--header-bg: rgba(15, 12, 22, .82);--header-border: rgba(167, 139, 250, .1);--nav-mobile-bg: rgba(15, 12, 22, .97);--nav-link-divider: rgba(236, 234, 244, .06);--btn-ghost-bg: rgba(236, 234, 244, .05);--btn-ghost-hover-bg: rgba(167, 139, 250, .1);--footer-bg: linear-gradient(180deg, transparent, rgba(22, 18, 34, .92));--footer-bottom-border: rgba(236, 234, 244, .06);--why-item-bg: rgba(236, 234, 244, .03);--why-item-hover: rgba(167, 139, 250, .08);--icon-wrap-bg: rgba(167, 139, 250, .1);--cta-band-glow: 0 0 56px rgba(91, 33, 182, .18);--cta-mesh-1: rgba(139, 92, 246, .14);--cta-mesh-2: rgba(109, 40, 217, .1);--input-bg: rgba(10, 8, 18, .55);--device-screen: #12101c;--hero-phone-ui: linear-gradient(180deg, #1a1628 0%, #12101c 100%);--hero-phone-bezel: linear-gradient(145deg, rgba(236, 234, 244, .1), rgba(236, 234, 244, .02));--hero-phone-shadow: 0 24px 60px rgba(0, 0, 0, .55), 0 0 0 1px rgba(139, 92, 246, .18) inset;--hero-orbit-glow: rgba(139, 92, 246, .35);--portfolio-frame-bg: linear-gradient(180deg, rgba(28, 24, 42, .92), rgba(15, 12, 22, .96));--mock-surface: #14121f;--mock-chrome: rgba(236, 234, 244, .07);--mock-shadow: 0 20px 50px rgba(0, 0, 0, .5);--toggle-bg: rgba(236, 234, 244, .05);--mesh-blob-1: #5b21b6;--mesh-blob-2: #6d28d9;--mesh-blob-3: #7c6aa6;--btn-primary-glow: rgba(139, 92, 246, .35);--btn-primary-glow-hover: rgba(167, 139, 250, .25);--hero-dot-1: #c4b5fd;--hero-dot-2: #a78bfa;--hero-dot-3: #8b5cf6;--hero-bar-mid: rgba(167, 139, 250, .55);--hero-bar-end: rgba(139, 92, 246, .38);--services-icon-bg: linear-gradient(135deg, rgba(167, 139, 250, .2), rgba(109, 40, 217, .1));--portfolio-mock-shine-1: rgba(167, 139, 250, .14);--portfolio-mock-shine-2: rgba(139, 92, 246, .1);--input-focus-glow: rgba(167, 139, 250, .22);--warn-text: #c4b5fd;--warn-border: rgba(167, 139, 250, .35);--warn-bg: rgba(109, 40, 217, .12);--status-ok: #a3b5a8;--status-err: #c9a4b8}html[data-theme=light]{color-scheme:light;--purple: #6d28d9;--purple-deep: #5b21b6;--purple-muted: #7c6aa6;--link: #5b21b6;--link-hover: #4c1d95;--focus-ring: #7c3aed;--accent-soft: #8b7ab8;--gradient-hero: linear-gradient(135deg, #5b21b6 0%, #6d28d9 45%, #7c3aed 100%);--gradient-text: linear-gradient( 105deg, #312e81 0%, #5b21b6 35%, #6d28d9 70%, #7c3aed 100% );--bg-deep: #faf8ff;--bg-elevated: #ffffff;--bg-card: rgba(255, 255, 255, .92);--border-subtle: rgba(91, 33, 182, .1);--border-glow: rgba(91, 33, 182, .22);--text: #1a1530;--text-muted: #635d7a;--on-accent: #faf8ff;--body-glow-1: rgba(124, 58, 237, .09);--body-glow-2: rgba(91, 33, 182, .05);--body-glow-3: rgba(167, 139, 250, .08);--shadow-card: 0 4px 24px rgba(91, 33, 182, .06);--shadow-card-hover: 0 16px 48px rgba(91, 33, 182, .1);--header-bg: rgba(250, 248, 255, .88);--header-border: rgba(91, 33, 182, .08);--nav-mobile-bg: rgba(255, 255, 255, .98);--nav-link-divider: rgba(26, 21, 48, .07);--btn-ghost-bg: rgba(91, 33, 182, .05);--btn-ghost-hover-bg: rgba(91, 33, 182, .09);--footer-bg: linear-gradient(180deg, transparent, rgba(243, 239, 252, .98));--footer-bottom-border: rgba(91, 33, 182, .08);--why-item-bg: rgba(91, 33, 182, .04);--why-item-hover: rgba(91, 33, 182, .08);--icon-wrap-bg: rgba(124, 58, 237, .08);--cta-band-glow: 0 8px 40px rgba(91, 33, 182, .08);--cta-mesh-1: rgba(124, 58, 237, .1);--cta-mesh-2: rgba(91, 33, 182, .07);--input-bg: #ffffff;--device-screen: #f3effa;--hero-phone-ui: linear-gradient(180deg, #faf8ff 0%, #f0ebf8 100%);--hero-phone-bezel: linear-gradient(145deg, #ffffff, #ede9f7);--hero-phone-shadow: 0 20px 48px rgba(91, 33, 182, .12), 0 0 0 1px rgba(91, 33, 182, .1) inset;--hero-orbit-glow: rgba(124, 58, 237, .2);--portfolio-frame-bg: linear-gradient(180deg, #ffffff, #f7f4fc);--mock-surface: #ede8f5;--mock-chrome: rgba(26, 21, 48, .07);--mock-shadow: 0 12px 36px rgba(91, 33, 182, .08);--toggle-bg: rgba(91, 33, 182, .06);--mesh-blob-1: #c4b5fd;--mesh-blob-2: #ddd6fe;--mesh-blob-3: #e9d5ff;--btn-primary-glow: rgba(91, 33, 182, .22);--btn-primary-glow-hover: rgba(91, 33, 182, .18);--hero-dot-1: #7c3aed;--hero-dot-2: #6d28d9;--hero-dot-3: #5b21b6;--hero-bar-mid: rgba(109, 40, 217, .45);--hero-bar-end: rgba(91, 33, 182, .32);--services-icon-bg: linear-gradient(135deg, rgba(124, 58, 237, .12), rgba(91, 33, 182, .08));--portfolio-mock-shine-1: rgba(124, 58, 237, .12);--portfolio-mock-shine-2: rgba(91, 33, 182, .08);--input-focus-glow: rgba(124, 58, 237, .15);--warn-text: #5b21b6;--warn-border: rgba(91, 33, 182, .22);--warn-bg: rgba(124, 58, 237, .06);--status-ok: #4d6b55;--status-err: #9d3f5c}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;min-height:100vh;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--text);background:var(--bg-deep);-webkit-font-smoothing:antialiased;transition:background-color .35s ease,color .35s ease}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 85% 55% at 50% -15%,var(--body-glow-1),transparent),radial-gradient(ellipse 55% 45% at 100% 40%,var(--body-glow-2),transparent),radial-gradient(ellipse 50% 35% at 0% 85%,var(--body-glow-3),transparent);transition:opacity .35s ease}main{position:relative;z-index:1}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.02em}a{color:var(--link);text-decoration:none;transition:color .2s ease,opacity .2s ease}a:hover{color:var(--link-hover)}img{max-width:100%;height:auto;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:min(1120px,100% - 2rem);margin-inline:auto}.section-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--purple-deep);margin-bottom:1rem}html[data-theme=dark] .section-label{color:var(--purple)}.section-label:before{content:"";width:2rem;height:2px;background:var(--gradient-hero);border-radius:2px}.reveal{opacity:0;transform:translateY(1.5rem)}.reveal.is-visible{opacity:1;transform:translateY(0);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.75rem;font-family:var(--font-body);font-size:1rem;font-weight:600;border:none;border-radius:999px;cursor:pointer;transition:transform .2s ease,box-shadow .25s ease,filter .2s ease}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.btn--primary{color:var(--on-accent);background:var(--gradient-hero);background-size:200% 200%;box-shadow:0 0 0 1px #ffffff1a inset,0 4px 20px var(--btn-primary-glow)}.btn--primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 0 0 1px #ffffff24 inset,0 10px 32px var(--btn-primary-glow-hover)}html[data-theme=light] .btn--primary{box-shadow:0 0 0 1px #ffffff73 inset,0 4px 18px var(--btn-primary-glow)}html[data-theme=light] .btn--primary:hover{box-shadow:0 0 0 1px #ffffff8c inset,0 10px 28px var(--btn-primary-glow-hover)}.btn--ghost{color:var(--text);background:var(--btn-ghost-bg);border:1px solid var(--border-subtle)}.btn--ghost:hover{border-color:var(--border-glow);background:var(--btn-ghost-hover-bg)}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);backdrop-filter:blur(12px);transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease,background-color .35s ease}.card:hover{border-color:var(--border-glow);transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.section{padding-block:var(--space-section)}.section--tight{padding-block:clamp(3rem,8vw,5rem)}.gradient-text{background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent}.mesh-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}.mesh-bg__blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.45}.mesh-bg__blob--1{width:min(70vw,480px);height:min(70vw,480px);background:var(--mesh-blob-1);top:-10%;right:-15%}.mesh-bg__blob--2{width:min(50vw,360px);height:min(50vw,360px);background:var(--mesh-blob-2);bottom:10%;left:-10%;opacity:.3}.mesh-bg__blob--3{width:min(40vw,280px);height:min(40vw,280px);background:var(--mesh-blob-3);top:40%;left:30%;opacity:.25}html[data-theme=light] .mesh-bg__blob--1,html[data-theme=light] .mesh-bg__blob--2,html[data-theme=light] .mesh-bg__blob--3{opacity:.55}.header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;height:var(--header-h);border-bottom:1px solid var(--header-border);background:var(--header-bg);backdrop-filter:blur(16px);transition:background-color .35s ease,border-color .35s ease}.header__inner[data-astro-cid-3ef6ksr2]{height:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem}.header__logo[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.65rem;color:var(--text);font-family:var(--font-display);font-weight:700;font-size:1.125rem;flex-shrink:0}.header__logo[data-astro-cid-3ef6ksr2]:hover{color:var(--text);opacity:.92}.header__mark[data-astro-cid-3ef6ksr2]{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--gradient-hero);color:var(--on-accent);font-size:1rem;font-weight:800;box-shadow:0 0 20px var(--btn-primary-glow)}html[data-theme=light] .header__mark[data-astro-cid-3ef6ksr2]{box-shadow:0 0 14px #5b21b633}.header__nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:flex-end;flex:1;gap:clamp(1rem,3vw,2rem)}.header__links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:clamp(1rem,3vw,2rem)}.header__link[data-astro-cid-3ef6ksr2]{color:var(--text-muted);font-weight:500;font-size:.9375rem}.header__link[data-astro-cid-3ef6ksr2]:hover,.header__link[data-astro-cid-3ef6ksr2].is-active{color:var(--text)}.header__cta[data-astro-cid-3ef6ksr2]{padding:.65rem 1.25rem;font-size:.9375rem;white-space:nowrap}.header__end[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.header__theme[data-astro-cid-3ef6ksr2]{display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--border-subtle);border-radius:.75rem;background:var(--toggle-bg);color:var(--text);cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.header__theme[data-astro-cid-3ef6ksr2]:hover{border-color:var(--border-glow);box-shadow:0 0 20px var(--btn-primary-glow)}html[data-theme=light] .header__theme[data-astro-cid-3ef6ksr2]:hover{box-shadow:0 0 16px #5b21b61a}.header__theme[data-astro-cid-3ef6ksr2]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.header__theme-icon[data-astro-cid-3ef6ksr2]{display:none;line-height:0}html[data-theme=dark] .header__theme-icon--sun[data-astro-cid-3ef6ksr2],html[data-theme=light] .header__theme-icon--moon[data-astro-cid-3ef6ksr2]{display:block}.header__toggle[data-astro-cid-3ef6ksr2]{display:none;width:2.75rem;height:2.75rem;border:1px solid var(--border-subtle);border-radius:.75rem;background:var(--toggle-bg);cursor:pointer;align-items:center;justify-content:center;color:var(--text)}.header__toggle[data-astro-cid-3ef6ksr2]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.header__bars[data-astro-cid-3ef6ksr2]{display:block;width:1.25rem;height:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}@media (max-width: 768px){.header__toggle[data-astro-cid-3ef6ksr2]{display:flex}.header__nav[data-astro-cid-3ef6ksr2]{position:fixed;inset:var(--header-h) 0 0 0;flex-direction:column;align-items:stretch;flex:none;padding:1.5rem;gap:0;background:var(--nav-mobile-bg);border-bottom:1px solid var(--border-subtle);transform:translateY(-100%);opacity:0;visibility:hidden;transition:transform .3s ease,opacity .3s ease,visibility .3s}.header__nav[data-astro-cid-3ef6ksr2].is-open{transform:translateY(0);opacity:1;visibility:visible}.header__links[data-astro-cid-3ef6ksr2]{flex-direction:column;align-items:stretch;gap:0}.header__link[data-astro-cid-3ef6ksr2]{padding:1rem 0;border-bottom:1px solid var(--nav-link-divider)}.header__cta[data-astro-cid-3ef6ksr2]{margin-top:1rem;text-align:center}}.footer[data-astro-cid-sz7xmlte]{position:relative;z-index:1;border-top:1px solid var(--border-subtle);padding-block:3rem 1.5rem;margin-top:2rem;background:var(--footer-bg);transition:background .35s ease,border-color .35s ease}.footer__grid[data-astro-cid-sz7xmlte]{display:grid;gap:2.5rem;grid-template-columns:1fr}@media (min-width: 768px){.footer__grid[data-astro-cid-sz7xmlte]{grid-template-columns:1.4fr 1fr 1fr}}.footer__brand[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-weight:700;font-size:1.125rem;color:var(--text);margin-bottom:.75rem}.footer__brand[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.footer__mark[data-astro-cid-sz7xmlte]{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.45rem;background:var(--gradient-hero);color:var(--on-accent);font-size:.875rem;font-weight:800}.footer__tagline[data-astro-cid-sz7xmlte]{color:var(--text-muted);font-size:.9375rem;max-width:28ch;margin:0}.footer__label[data-astro-cid-sz7xmlte]{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--purple);margin:0 0 1rem;font-weight:600}.footer__list[data-astro-cid-sz7xmlte]{list-style:none;margin:0;padding:0}.footer__list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted);display:block;padding:.35rem 0}.footer__list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.footer__social[data-astro-cid-sz7xmlte]{display:flex;gap:1rem;list-style:none;margin:0 0 1rem;padding:0}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted);display:flex;padding:.5rem;border-radius:.5rem;border:1px solid var(--border-subtle);transition:color .2s,border-color .2s,box-shadow .2s}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--link);border-color:var(--border-glow);box-shadow:0 0 20px var(--btn-primary-glow)}.footer__email[data-astro-cid-sz7xmlte]{margin:0;font-size:.9375rem}.footer__email[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text)}.footer__bottom[data-astro-cid-sz7xmlte]{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--footer-bottom-border);font-size:.8125rem;color:var(--text-muted)}
