@layer reset,design,layout,components,utilities;@layer reset{*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,sf pro display,helvetica neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@layer design{:root{--bg-elevated:oklch(1 0 0 / 0.04);--bg-input:oklch(1 0 0 / 0.08);--border:oklch(1 0 0 / 0.06);--text:oklch(0.82 0.018 260);--text-dim:oklch(0.65 0.025 260 / 0.7);--accent:oklch(0.7 0.15 255);--text-xs:0.7rem;--text-sm:0.8rem;--text-base:0.9rem;--text-lg:1.05rem;--radius-xs:6px;--radius-sm:10px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-full:999px;--overlay:oklch(0 0 0 / 0.75);--blur-sm:6px;--gap-xs:0.35rem;--gap-sm:0.5rem;--gap-md:1rem;--gap-lg:1.25rem}body{background:oklch(.08 .025 260);color:var(--text);line-height:1.6;overflow-x:hidden;min-height:100dvh}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 50% at 50% 50%,oklch(.6 .15 270/.09),oklch(.5 .12 240/.04),transparent 60%),radial-gradient(ellipse 80% 60% at 20% 30%,oklch(.5 .12 280/.08),transparent),radial-gradient(ellipse 60% 70% at 80% 70%,oklch(.5 .1 240/.06),transparent),radial-gradient(ellipse 50% 50% at 50% 50%,oklch(.4 .08 300/.04),transparent),radial-gradient(ellipse 40% 40% at 70% 20%,oklch(.5 .1 200/.05),transparent),oklch(.08 .025 260);box-shadow:.03% 52.46% 0 1.4px oklch(1 0 0/.28),37.62% 19.63% 0 1.7px oklch(1 0 0/.41),53.04% 25.71% 0 .6px oklch(1 0 0/.56),90.05% 45.2% 0 .8px oklch(1 0 0/.27),18.83% 32.33% 0 .6px oklch(1 0 0/.55),53.44% 84.45% 0 1.4px oklch(1 0 0/.19),53.9% 13.1% 0 1.5px oklch(1 0 0/.38),47.2% 45% 0 .8px oklch(1 0 0/.16),2.3% 99.35% 0 1.6px oklch(1 0 0/.54),57.08% 76.92% 0 1.2px oklch(1 0 0/.32),37.56% 26.71% 0 .9px oklch(1 0 0/.47),36.38% 5.28% 0 1.1px oklch(1 0 0/.23),45.38% 32.93% 0 .7px oklch(1 0 0/.18),98.65% 54.61% 0 .6px oklch(1 0 0/.65),43.37% 70.16% 0 .7px oklch(1 0 0/.42),99.54% 19% 0 1.3px oklch(1 0 0/.35),43.9% 74.7% 0 .7px oklch(1 0 0/.56),80.61% 9.75% 0 .5px oklch(1 0 0/.22),63.74% 38.03% 0 .8px oklch(1 0 0/.4),52.12% 10.35% 0 1.7px oklch(1 0 0/.32),76.83% 26.53% 0 1.3px oklch(1 0 0/.61),46.64% 44.08% 0 1.6px oklch(1 0 0/.38),97.72% 32% 0 1.5px oklch(1 0 0/.58),74.26% 55.75% 0 1.5px oklch(1 0 0/.42),30.74% 34.34% 0 .9px oklch(1 0 0/.37),56.68% 65.25% 0 .6px oklch(1 0 0/.39),45.62% .95% 0 1.3px oklch(1 0 0/.34),44.69% 93.62% 0 .7px oklch(1 0 0/.36),29.25% 41.1% 0 .8px oklch(1 0 0/.33),71.02% 93.56% 0 .5px oklch(1 0 0/.39),82.16% 53.27% 0 .7px oklch(1 0 0/.35),12.88% 81.24% 0 1px oklch(1 0 0/.19),59.76% 33.67% 0 .8px oklch(1 0 0/.34),31.41% 61.65% 0 .7px oklch(1 0 0/.29),98.91% 19.64% 0 1.3px oklch(1 0 0/.41),78.46% 12.72% 0 .9px oklch(1 0 0/.26),29.88% 16.82% 0 1.6px oklch(1 0 0/.51),58.93% 51.76% 0 1.1px oklch(1 0 0/.33),29.33% 38.98% 0 1px oklch(1 0 0/.36),32.19% 35.27% 0 .6px oklch(1 0 0/.51),40.94% 1.01% 0 .9px oklch(1 0 0/.42),19.18% 87.03% 0 1.6px oklch(1 0 0/.63),79.44% 23.31% 0 1.1px oklch(1 0 0/.25),87.13% 81.23% 0 1.7px oklch(1 0 0/.32),62.84% 67.46% 0 1.6px oklch(1 0 0/.21),68% 99.66% 0 1.7px oklch(1 0 0/.22),36.91% 4.04% 0 1.2px oklch(1 0 0/.24),50.53% 15.61% 0 1.5px oklch(1 0 0/.28),21.65% 33.76% 0 1.4px oklch(1 0 0/.36),95.74% 57.5% 0 1px oklch(1 0 0/.47),93.72% 49.27% 0 1.1px oklch(1 0 0/.19),75.33% 15.13% 0 1.2px oklch(1 0 0/.45),34.42% 38.92% 0 .8px oklch(1 0 0/.56),48.16% 64.94% 0 1.1px oklch(1 0 0/.18),63.03% 67.45% 0 .7px oklch(1 0 0/.55),21.33% 4.95% 0 1.1px oklch(1 0 0/.52),96.37% 53.56% 0 .6px oklch(1 0 0/.47),38.13% 49.86% 0 .9px oklch(1 0 0/.34),84.58% 84.62% 0 1.6px oklch(1 0 0/.43),5.23% 73.3% 0 .8px oklch(1 0 0/.46),2.32% 46.85% 0 1.3px oklch(1 0 0/.59),33.66% 88.38% 0 1.7px oklch(1 0 0/.38),48.05% 88.67% 0 .5px oklch(1 0 0/.17),48.08% 54.81% 0 1px oklch(1 0 0/.42),66.48% 58.36% 0 1.2px oklch(1 0 0/.21),77.47% 80.57% 0 1.7px oklch(1 0 0/.37),8.82% 44.2% 0 1.7px oklch(1 0 0/.63),40.46% 33.06% 0 1.7px oklch(1 0 0/.55),37.39% 30.7% 0 .6px oklch(1 0 0/.61),62.84% 92.23% 0 1.4px oklch(1 0 0/.58),14.66% 47.53% 0 .6px oklch(1 0 0/.3),25.03% 42.85% 0 1.4px oklch(1 0 0/.51),24.24% 42.9% 0 1.4px oklch(1 0 0/.46),49.34% 80.11% 0 1.5px oklch(1 0 0/.28),21.52% 65.81% 0 .8px oklch(1 0 0/.34),24.22% 62.35% 0 .6px oklch(1 0 0/.45),37.05% 12.51% 0 1.1px oklch(1 0 0/.34),39.3% 93.24% 0 .5px oklch(1 0 0/.2),26.43% 69.55% 0 1.5px oklch(1 0 0/.41),.79% 79.09% 0 1px oklch(1 0 0/.21),15.72% 38.71% 0 .5px oklch(1 0 0/.29),68.4% 19.9% 0 .6px oklch(1 0 0/.5),75.95% 9.56% 0 1.5px oklch(1 0 0/.42),50.67% 76.84% 0 1.7px oklch(1 0 0/.29),73.03% 28.71% 0 1.1px oklch(1 0 0/.48),21.49% 40.2% 0 1.2px oklch(1 0 0/.45),27.22% 67.96% 0 .9px oklch(1 0 0/.39),50.55% 33.82% 0 1.4px oklch(1 0 0/.54),87.7% 43.69% 0 1px oklch(1 0 0/.31),14.41% 44.03% 0 1.4px oklch(1 0 0/.63),82.8% 62.79% 0 1.1px oklch(1 0 0/.15),93.77% 54.96% 0 .7px oklch(1 0 0/.52),36.28% 44.7% 0 .7px oklch(1 0 0/.22),31.83% 92.75% 0 1.4px oklch(1 0 0/.5),72.87% 33.88% 0 1.1px oklch(1 0 0/.44),64.44% 21.85% 0 1.4px oklch(1 0 0/.48),18.95% 17.87% 0 1.5px oklch(1 0 0/.33),84.94% 93.86% 0 1.6px oklch(1 0 0/.33),32.99% 26.64% 0 1.2px oklch(1 0 0/.54),80.77% 84.9% 0 .9px oklch(1 0 0/.18),20.23% 32.82% 0 1.3px oklch(1 0 0/.55),62.38% 77.21% 0 .8px oklch(1 0 0/.46),81.63% 2.71% 0 1px oklch(1 0 0/.33),88.03% 58.7% 0 .8px oklch(1 0 0/.31),96.67% 73.15% 0 1px oklch(1 0 0/.39),12.53% 6.78% 0 .7px oklch(1 0 0/.57),75.26% 31.31% 0 .5px oklch(1 0 0/.16),21.68% 26.66% 0 1.2px oklch(1 0 0/.6),41.4% 44.91% 0 1.4px oklch(1 0 0/.18),96.01% 23.29% 0 1.5px oklch(1 0 0/.43),19.93% 3.63% 0 1.1px oklch(1 0 0/.41),49.47% 14.53% 0 1.6px oklch(1 0 0/.6),75.54% 79.33% 0 1.1px oklch(1 0 0/.29),22.02% 6.92% 0 1.7px oklch(1 0 0/.25),91.86% 87.86% 0 1.2px oklch(1 0 0/.56),14.8% 71.24% 0 .8px oklch(1 0 0/.62),18.4% 97.78% 0 .6px oklch(1 0 0/.63),89.6% 80.16% 0 1.4px oklch(1 0 0/.64),25.53% 39.09% 0 .7px oklch(1 0 0/.22),46.53% 87.14% 0 1.4px oklch(1 0 0/.21),19.28% 88.05% 0 .8px oklch(1 0 0/.34),75.83% 31.64% 0 .8px oklch(1 0 0/.4),10.56% 30.28% 0 1.7px oklch(1 0 0/.38),21.99% 63% 0 1.4px oklch(1 0 0/.41),68.4% 31% 0 1.3px oklch(1 0 0/.36),89.76% 60.16% 0 1px oklch(1 0 0/.56),42.65% 96.9% 0 .8px oklch(1 0 0/.5),.08% 80.37% 0 .8px oklch(1 0 0/.58),33.56% 8.39% 0 1px oklch(1 0 0/.53),92.89% 31.86% 0 1.5px oklch(1 0 0/.28),54.86% 80.53% 0 1px oklch(1 0 0/.52),59.72% 4.16% 0 1.3px oklch(1 0 0/.56),72.91% 21.75% 0 1.2px oklch(1 0 0/.25),64.58% 46.85% 0 1.1px oklch(1 0 0/.5),95.41% 20.16% 0 .6px oklch(1 0 0/.51),74.37% 41.78% 0 .9px oklch(1 0 0/.39),80.34% 74.36% 0 1.7px oklch(1 0 0/.26),61.91% 84.63% 0 .7px oklch(1 0 0/.35),34.05% 28.01% 0 1px oklch(1 0 0/.25),65.92% 11.3% 0 1.5px oklch(1 0 0/.2),48.96% 70.63% 0 1.5px oklch(1 0 0/.24),40.87% 8.82% 0 1.3px oklch(1 0 0/.23),9.05% 27.3% 0 .8px oklch(1 0 0/.59),7.38% 7.85% 0 1px oklch(1 0 0/.31),78.04% 40.48% 0 1.3px oklch(1 0 0/.22),17.7% 91.69% 0 1.5px oklch(1 0 0/.57),46.6% 62.96% 0 1px oklch(1 0 0/.52),18.85% 45.21% 0 1.3px oklch(1 0 0/.45),28.37% 40.56% 0 1.3px oklch(1 0 0/.17),51.06% 83.62% 0 1.3px oklch(1 0 0/.42),90.43% 73.97% 0 1px oklch(1 0 0/.26),59.27% 81.07% 0 .5px oklch(1 0 0/.28),59.16% 73.77% 0 1px oklch(1 0 0/.49),77.45% 99.47% 0 1.6px oklch(1 0 0/.6),42.71% 76.95% 0 .9px oklch(1 0 0/.51),16.99% 4.4% 0 1.3px oklch(1 0 0/.37),99.84% 32.88% 0 1.3px oklch(1 0 0/.57),56.14% 84.23% 0 1.4px oklch(1 0 0/.42),8.6% 95.04% 0 1.1px oklch(1 0 0/.46),72.23% 43.56% 0 .6px oklch(1 0 0/.27),89.91% 86% 0 1.3px oklch(1 0 0/.22),1.24% 24.71% 0 1.4px oklch(1 0 0/.18),68.71% 70.05% 0 1.1px oklch(1 0 0/.41),72.51% 43.18% 0 1.2px oklch(1 0 0/.18),78.85% 94.1% 0 1.2px oklch(1 0 0/.64),71.01% 33% 0 1.7px oklch(1 0 0/.32),95.76% 6.33% 0 .7px oklch(1 0 0/.41),78.42% 90.98% 0 1.3px oklch(1 0 0/.3),96.48% 61.27% 0 .5px oklch(1 0 0/.2),2.73% 1.84% 0 1.7px oklch(1 0 0/.27),77.2% 87.11% 0 .6px oklch(1 0 0/.19),25.07% 91.28% 0 1.2px oklch(1 0 0/.28),40.11% 81.21% 0 1.2px oklch(1 0 0/.54),99.69% 12.31% 0 1.1px oklch(1 0 0/.31),33.94% 1.61% 0 .6px oklch(1 0 0/.17),65.1% 5.45% 0 1.5px oklch(1 0 0/.15),73.33% 53.52% 0 .9px oklch(1 0 0/.2),71.73% 32.96% 0 .7px oklch(1 0 0/.61),46.7% 47.25% 0 .9px oklch(1 0 0/.4),8.47% 17.68% 0 .6px oklch(1 0 0/.48);animation:hyperspace 30s ease-in-out infinite alternate;will-change:transform;transform-origin:center}@keyframes hyperspace{from{transform:scale(1)rotate(0)}to{transform:scale(1.08)rotate(.4deg)}}@media(prefers-reduced-motion:reduce){body::before,body:has(.page-section)::before{animation:none}}body:has(.page-section)::before{background:radial-gradient(ellipse 70% 50% at 50% 50%,oklch(.6 .15 270/.09),oklch(.5 .12 240/.04),transparent 60%),radial-gradient(ellipse 80% 60% at 20% 30%,oklch(.5 .12 280/.08),transparent),radial-gradient(ellipse 60% 70% at 80% 70%,oklch(.5 .1 240/.06),transparent),radial-gradient(ellipse 50% 50% at 50% 50%,oklch(.4 .08 300/.04),transparent),radial-gradient(ellipse 40% 40% at 70% 20%,oklch(.5 .1 200/.05),transparent),linear-gradient(oklch(.06 .02 260/.7),oklch(.06 .02 260/.85)),oklch(.08 .025 260);box-shadow:28.06% 42.53% 0 1.2px oklch(1 0 0/.37),30.54% 27.38% 0 .6px oklch(1 0 0/.37),15.09% 83.89% 0 1px oklch(1 0 0/.46),43.26% 76.44% 0 1.1px oklch(1 0 0/.29),40.67% 88.69% 0 .9px oklch(1 0 0/.2),88.61% 65.06% 0 1.2px oklch(1 0 0/.39),15.13% 67.13% 0 .5px oklch(1 0 0/.54),55.97% 36.36% 0 .7px oklch(1 0 0/.3),56.48% 6.82% 0 1.4px oklch(1 0 0/.15),28.64% 16.39% 0 1.1px oklch(1 0 0/.4),33.26% 52.5% 0 .7px oklch(1 0 0/.25),53.31% 47.22% 0 1.1px oklch(1 0 0/.56),21.74% 89.19% 0 .9px oklch(1 0 0/.19),38.2% 50.42% 0 1.5px oklch(1 0 0/.61),31.36% 65.73% 0 1px oklch(1 0 0/.55),81.26% 70.24% 0 1px oklch(1 0 0/.28),66.03% 98.55% 0 .6px oklch(1 0 0/.56),31.44% 35.44% 0 1.6px oklch(1 0 0/.41),20.55% 70.16% 0 1.2px oklch(1 0 0/.58),34.2% 17.34% 0 .6px oklch(1 0 0/.31),73.72% 93.3% 0 .7px oklch(1 0 0/.47),51.88% 64.82% 0 .9px oklch(1 0 0/.2),7.82% 47.46% 0 1.3px oklch(1 0 0/.33),46.41% 99.29% 0 .7px oklch(1 0 0/.63),21.13% 19.46% 0 1.6px oklch(1 0 0/.18),82.48% 92.05% 0 .6px oklch(1 0 0/.54),76.32% 50.54% 0 .6px oklch(1 0 0/.32),62.97% 14.8% 0 1.6px oklch(1 0 0/.31),67.86% 65.4% 0 1.6px oklch(1 0 0/.37),74.9% 85.44% 0 .6px oklch(1 0 0/.59),11.31% 22.65% 0 .5px oklch(1 0 0/.18),76.07% 99.68% 0 1px oklch(1 0 0/.64),40.82% 61.04% 0 .7px oklch(1 0 0/.26),8.69% 35.97% 0 .5px oklch(1 0 0/.19),94.25% 32.27% 0 1.6px oklch(1 0 0/.64),11.19% 17.94% 0 1.2px oklch(1 0 0/.22),62.08% 37.35% 0 1.5px oklch(1 0 0/.22),1.32% 45.27% 0 .5px oklch(1 0 0/.31),43.82% 24.49% 0 .8px oklch(1 0 0/.24),49.13% 59.83% 0 .7px oklch(1 0 0/.38);animation:hyperspace 40s ease-in-out infinite alternate;will-change:transform;transform-origin:center}::selection{background:var(--accent);color:oklch(1 0 0)}}@layer layout{#wave-canvas{position:fixed;inset:0;inline-size:100%;block-size:100%;z-index:0;pointer-events:none}.navbar{position:fixed;inset:0 0 auto 0;z-index:100;background:oklch(.08 .03 260/.15);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding-inline:2rem}.navbar::after{content:'';position:absolute;inset:auto 0 0 0;block-size:1px;background:linear-gradient(to right,transparent,oklch(1 0 0/.05) 15%,oklch(1 0 0/.05) 85%,transparent)}.nav-container{max-inline-size:1e3px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;block-size:56px}main{position:relative;z-index:1}.hero-section{min-block-size:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;text-align:center}.hero-content{display:flex;flex-direction:column;align-items:center}.services-section{padding:4rem 2rem 6rem;container:services/inline-size}.section-container{max-inline-size:1e3px;margin-inline:auto}.cta-section{padding:4rem 2rem 6rem;text-align:center}.footer{position:relative;z-index:1;background:oklch(.12 .04 260/.25);backdrop-filter:blur(24px)saturate(120%);-webkit-backdrop-filter:blur(24px)saturate(120%);padding:3rem 2rem 2rem}.footer::before{content:'';position:absolute;inset:0 0 auto 0;block-size:1px;background:linear-gradient(to right,transparent,var(--border) 15%,var(--border) 85%,transparent)}.footer-container{max-inline-size:1e3px;margin-inline:auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;margin-block-end:3rem;text-align:start;@media(max-width:700px){grid-template-columns: 1fr 1fr;}@media(max-width:450px){grid-template-columns: 1fr; text-align: center;}}.footer-brand{.footer-logo{font-weight:400;font-size:1.05rem;color:var(--text);letter-spacing:-.01em;word-spacing:-.15em;strong{font-weight:500;color:var(--accent)}}.footer-tagline{font-size:var(--text-sm);color:var(--text-dim);line-height:1.6;margin-block-start:.5rem}}.footer-col{h4{font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--text);margin-block-end:.75rem;opacity:.7}a{display:block;text-decoration:none;font-size:var(--text-sm);color:var(--text-dim);padding-block:.2rem;transition:color .2s;&:hover{color:var(--text)}}}.footer-bottom{text-align:center;padding-block-start:1.5rem;position:relative;p{font-size:var(--text-sm);color:var(--text-dim);opacity:.55}}.footer-bottom::before{content:'';position:absolute;inset:0 0 auto 0;block-size:1px;background:linear-gradient(to right,transparent,var(--border) 20%,var(--border) 80%,transparent)}}@layer components{.nav-logo{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:400;font-size:clamp(.95rem,1.5vw,1.05rem);color:var(--text);letter-spacing:-.01em;word-spacing:-.15em;strong{font-weight:500;color:var(--accent)}}.nav-links{display:flex;align-items:center;gap:.25rem}.nav-link{text-decoration:none;color:var(--text-dim);font-size:.85rem;font-weight:400;padding:.4rem .9rem;border-radius:var(--radius-xs);transition:background .2s,color .2s}.nav-link:hover{color:var(--text);background:var(--bg-elevated)}.nav-cta{background:oklch(.7 .15 255/.15);color:var(--accent)!important;border:1px solid oklch(.7 .15 255/.15);border-radius:var(--radius-full)!important;padding:.4rem 1.1rem!important;font-weight:400;font-size:.85rem}.nav-cta:hover{background:oklch(.7 .15 255/.25)}.hero-badge{display:inline-block;font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.18em;color:oklch(.7 .15 255/.6);border:1px solid oklch(.7 .15 255/.08);padding:.3rem .9rem;border-radius:var(--radius-full);margin-block-end:2rem;box-shadow:0 0 12px oklch(.7 .15 255/.1),0 0 30px oklch(.7 .15 255/.05)}.hero-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:200;line-height:1.05;letter-spacing:-.03em;margin-block-end:1.5rem;max-inline-size:800px;strong{font-weight:500;color:oklch(.75 .12 255)}}.hero-text{font-size:clamp(1.1rem,2vw,1.3rem);color:oklch(.78 .02 260);font-weight:450;max-inline-size:680px;margin-inline:auto;line-height:1.7;margin-block-end:2.5rem;text-align:center}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;text-decoration:none;font-weight:500;font-size:.9rem;padding:.7rem 1.6rem;border-radius:var(--radius-full);transition:opacity .2s,background .2s;cursor:pointer;border:none}.btn-primary{background:oklch(.7 .15 255/.12);color:oklch(1 0 0);border:1px solid oklch(.7 .15 255/.2);transition:background .2s,border-color .2s}.btn-primary:hover{background:oklch(.7 .15 255/.25)}.btn-secondary{background:0 0;color:var(--text-dim);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-elevated);color:var(--text)}.section-header{text-align:center;margin-block-end:4rem}.section-label{font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.18em;color:var(--text-dim);margin-block-end:1rem}.expertise-intro{font-size:var(--text-lg);line-height:1.7;color:var(--text);max-inline-size:700px;margin-block-end:3rem}.expertise-body{display:grid;grid-template-columns:1fr 320px;gap:3rem;margin-block-end:3rem;@media(max-width:768px){grid-template-columns: 1fr; gap: 2rem;}}.expertise-heading{font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.18em;color:var(--text-dim);margin-block-end:1rem}.philosophy-list{display:flex;flex-direction:column;gap:.75rem;margin-block-end:2.5rem}.philosophy-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem 1.25rem;font-size:var(--text-sm);line-height:1.5;color:var(--text);font-style:italic;border-inline-start:3px solid var(--accent);transition:background .2s,border-color .2s;&:hover{background:oklch(1 0 0/.05);border-color:oklch(.7 .15 255/.15)}}.approach-list{list-style:none;padding:0;margin:0 0 2.5rem;display:flex;flex-direction:column;gap:.6rem}.approach-list li{font-size:var(--text-sm);line-height:1.5;color:var(--text);padding-inline-start:1.3rem;position:relative}.approach-list li::before{content:'›';position:absolute;left:0;color:var(--accent);font-weight:700;font-size:1.1rem}.opensource-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.opensource-list li{font-size:var(--text-sm);line-height:1.5;color:var(--text);padding-inline-start:1.3rem;position:relative}.opensource-list li::before{content:'•';position:absolute;left:0;color:var(--accent);font-weight:700}.opensource-list a{color:var(--accent);text-decoration:none}.opensource-list a:hover{text-decoration:underline}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.expertise-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem 1.25rem;text-align:center;transition:background .2s,border-color .2s,transform .2s;&:hover{background:oklch(1 0 0/.07);border-color:oklch(.7 .15 255/.15);transform:translateY(-2px)}.expertise-card-icon{font-size:1.3rem;margin-block-end:.5rem}h4{font-size:.85rem;font-weight:400;letter-spacing:-.01em;margin-block-end:.35rem}p{font-size:.75rem;color:var(--text-dim);line-height:1.5}}.skill-section{margin-block-end:2rem}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{background:var(--bg-elevated);border:1px solid var(--border);border-radius:100px;padding:.35rem .85rem;font-size:.78rem;color:var(--text-dim);transition:background .2s,border-color .2s,color .2s;&:hover{background:oklch(1 0 0/.06);border-color:oklch(.7 .15 255/.15);color:var(--text)}}.expertise-outro{font-size:var(--text-sm);line-height:1.7;color:var(--text-dim);max-inline-size:650px;padding-block-start:1.5rem;border-block-start:1px solid var(--border)}.cta-title{font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:400;letter-spacing:-.02em;margin-block-end:1rem;strong{font-weight:500;color:oklch(.75 .12 255)}}.cta-text{color:var(--text-dim);font-size:var(--text-lg);max-inline-size:400px;margin-inline:auto;margin-block-end:2rem;line-height:1.7}.footer-text{color:var(--text-dim);font-size:.8rem;opacity:.6}.modal-overlay{position:fixed;inset:0;z-index:200;background:var(--overlay);backdrop-filter:blur(var(--blur-sm));-webkit-backdrop-filter:blur(var(--blur-sm));display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s}.modal-overlay.open{opacity:1;pointer-events:auto}.modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 2rem 2.5rem;max-inline-size:440px;inline-size:90vw;position:relative}.modal-close{position:absolute;top:.5rem;right:.5rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:50%;color:var(--text-dim);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;inline-size:32px;block-size:32px;transition:background .15s,color .15s,border-color .15s}.modal-close:hover{background:var(--bg-input);color:var(--text);border-color:oklch(1 0 0/.12)}.modal-header{margin-block-end:1.25rem;padding-inline-end:2rem}.modal-title{font-size:1.15rem;font-weight:500;letter-spacing:-.01em;color:var(--text)}.modal-form{display:flex;flex-direction:column;gap:var(--gap-lg)}.modal-form label{display:flex;flex-direction:column;gap:var(--gap-xs);font-size:var(--text-base);color:var(--text)}.modal-form input[type=email],.modal-form input[type=text],.modal-form textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;color:var(--text);font-size:var(--text-base);font-family:inherit;outline:none;transition:border-color .2s}.modal-form input:-webkit-autofill,.modal-form input:-webkit-autofill:hover,.modal-form input:-webkit-autofill:focus,.modal-form input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1e3px oklch(.14 .03 260)inset;-webkit-text-fill-color:var(--text);caret-color:var(--text)}.modal-form input[type=email]:focus,.modal-form input[type=text]:focus,.modal-form textarea:focus{border-color:var(--accent)}.modal-form textarea{resize:vertical;min-block-size:80px}.modal-check{display:flex;align-items:flex-start;gap:var(--gap-sm);font-size:.85rem;color:var(--text);white-space:nowrap}.modal-check label{white-space:nowrap}.modal-check input[type=checkbox]{flex-shrink:0;margin-block-start:.2rem;accent-color:var(--accent);inline-size:1rem;block-size:1rem;background:var(--bg-input);border:1px solid var(--border);border-radius:3px;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.modal-check input[type=checkbox]:checked{background:oklch(.55 .18 255);border-color:oklch(.55 .18 255)}.modal-check input[type=checkbox]:checked::after{content:'✓';color:oklch(1 0 0);font-size:.7rem;font-weight:700;line-height:1}.modal-check input[type=checkbox]:focus-visible{outline:2px solid oklch(.55 .18 255);outline-offset:2px}.modal-check a{color:oklch(.72 .15 255);text-decoration:underline;text-underline-offset:2px}.modal-check a:hover{text-decoration-thickness:2px}.modal-form .btn{align-self:flex-start}.page-section{padding:7rem 2rem 6rem}.page-title{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:400;letter-spacing:-.02em;margin-block-end:2rem}.page-content{font-size:var(--text-base);line-height:1.8;color:var(--text);max-inline-size:700px}.page-content h1,.page-content h2{font-size:1.3rem;font-weight:500;color:var(--text);margin-block:2rem .75rem}.page-content h3{font-size:1.1rem;font-weight:500;color:var(--text);margin-block:1.75rem .5rem}.page-content p{margin:0 0 1rem}.page-content ul{padding-inline-start:1.5rem;margin:0 0 1rem}.page-content li{margin-block-end:.5rem}.page-content li:last-child{margin-block-end:0}.page-content a{color:var(--accent);text-decoration:none}}#cc-main{--cc-bg:oklch(0.12 0.04 260);--cc-primary-color:oklch(0.82 0.018 260);--cc-secondary-color:oklch(0.65 0.025 260 / 0.7);--cc-btn-primary-bg:oklch(0.7 0.15 255 / 0.12);--cc-btn-primary-color:oklch(1 0 0);--cc-btn-primary-border-color:oklch(0.7 0.15 255 / 0.2);--cc-btn-primary-hover-bg:oklch(0.7 0.15 255 / 0.25);--cc-btn-primary-hover-color:oklch(1 0 0);--cc-btn-primary-hover-border-color:oklch(0.7 0.15 255 / 0.3);--cc-btn-secondary-bg:oklch(1 0 0 / 0.04);--cc-btn-secondary-color:oklch(0.82 0.018 260);--cc-btn-secondary-border-color:oklch(1 0 0 / 0.06);--cc-btn-secondary-hover-bg:oklch(1 0 0 / 0.08);--cc-btn-secondary-hover-color:oklch(1 0 0);--cc-btn-secondary-hover-border-color:oklch(1 0 0 / 0.1);--cc-separator-border-color:oklch(1 0 0 / 0.06);--cc-toggle-on-bg:oklch(0.7 0.15 255 / 0.6);--cc-toggle-off-bg:oklch(1 0 0 / 0.15);--cc-toggle-on-knob-bg:oklch(1 0 0);--cc-toggle-off-knob-bg:oklch(1 0 0 / 0.8);--cc-toggle-readonly-bg:oklch(1 0 0 / 0.08);--cc-toggle-readonly-knob-bg:oklch(1 0 0 / 0.4);--cc-cookie-category-block-bg:oklch(1 0 0 / 0.03);--cc-cookie-category-block-border:oklch(1 0 0 / 0.06);--cc-cookie-category-block-hover-bg:oklch(1 0 0 / 0.06);--cc-cookie-category-block-hover-border:oklch(1 0 0 / 0.08);--cc-overlay-bg:oklch(0 0 0 / 0.75);--cc-footer-bg:oklch(0.08 0.025 260);--cc-footer-color:oklch(0.65 0.025 260 / 0.7);--cc-footer-border-color:oklch(1 0 0 / 0.04);--cc-link-color:var(--accent);--cc-modal-border-radius:var(--radius-lg);--cc-btn-border-radius:var(--radius-full);--cc-font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", sans-serif}#cc-main .pm__section:first-child{display:none}@layer utilities{body:has(.page-section) #wave-canvas{display:none}@media(max-width:768px){.navbar{padding-inline:1rem}.nav-container{block-size:48px}.nav-links .nav-link:not(.nav-cta){display:none}.hero-section{padding:5rem 1.5rem}.services-section{padding:4rem 1.5rem}.cta-section{padding:4rem 1.5rem}}@media(max-width:480px){.hero-title{font-size:clamp(2rem,8vw,2.8rem)}.hero-text{font-size:1rem}}@media(max-width:768px){body::before{animation:none}}}