@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root{--bg:#07101f;--bg-soft:#0a1527;--panel:#0e1b30;--panel-2:#101f37;--line:rgba(151,174,212,.14);--text:#f2f6ff;--muted:#94a5bf;--blue:#3978ff;--blue-light:#6fa5ff;--cyan:#47c6e8;--radius:18px;--shadow:0 24px 70px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;line-height:1.65;overflow-x:hidden}body:has(.modal-backdrop){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{display:block;max-width:100%}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.site-shell{overflow:hidden}.section{padding:clamp(76px,9vw,124px) 0}.section-muted{background:linear-gradient(180deg,rgba(14,29,52,.76),rgba(8,18,34,.72));border-block:1px solid rgba(144,169,210,.07)}.section-anchor{scroll-margin-top:76px}
.eyebrow{display:inline-block;color:var(--blue-light);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.section-heading{margin-bottom:clamp(38px,5vw,60px);max-width:700px}.section-heading-centered{text-align:center;margin-inline:auto}.section-heading h2{font-family:'Manrope',sans-serif;font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.13;letter-spacing:-.045em;margin:.7rem 0 1rem}.section-heading p{color:var(--muted);font-size:clamp(1rem,1.5vw,1.08rem);margin:0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}.reveal-delay{transition-delay:.12s}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:76px;background:rgba(7,16,31,.8);border-bottom:1px solid transparent;backdrop-filter:blur(16px);transition:.25s}.site-header.is-scrolled{border-color:var(--line);box-shadow:0 8px 35px rgba(0,0,0,.2)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;flex:0 0 auto;align-items:center}.brand-logo{display:block;width:clamp(140px,15vw,170px);height:46px;object-fit:contain;object-position:left center}.site-nav{display:flex;align-items:center;gap:clamp(17px,2.1vw,30px)}.site-nav a{color:#aab8cd;font-size:.88rem;font-weight:600;transition:.2s}.site-nav a:hover,.site-nav a.active{color:#fff}.site-nav a.active:not(.nav-cta){position:relative}.site-nav a.active:not(.nav-cta):after{content:'';position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--blue)}.site-nav .nav-cta{color:white;background:var(--blue);padding:10px 17px;border-radius:9px;box-shadow:0 7px 22px rgba(57,120,255,.22)}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span{display:block;width:23px;height:2px;background:white;margin:5px;border-radius:2px}
.hero{position:relative;min-height:760px;padding:clamp(140px,16vw,190px) 0 100px;display:flex;align-items:center;background:radial-gradient(circle at 75% 40%,rgba(38,86,185,.13),transparent 35%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(48px,7vw,90px);position:relative}.hero-glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.hero-glow-one{width:480px;height:480px;right:-190px;top:80px;background:rgba(42,97,218,.08)}.hero-glow-two{width:280px;height:280px;left:-160px;bottom:0;background:rgba(51,190,222,.05)}.availability{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(95,148,255,.2);background:rgba(34,72,146,.12);border-radius:99px;padding:7px 12px;color:#b7c5d9;font-size:.78rem;margin-bottom:25px}.availability span{width:7px;height:7px;border-radius:50%;background:#48d29e;box-shadow:0 0 0 5px rgba(72,210,158,.1)}.hero h1{font:800 clamp(2.75rem,5.6vw,5rem)/1.03 'Manrope',sans-serif;letter-spacing:-.06em;margin:13px 0 25px;max-width:700px}.hero h1>span{color:var(--blue-light)}.hero-lead{max-width:620px;color:#a9b7ca;font-size:clamp(1.05rem,1.7vw,1.22rem);margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:10px;padding:13px 20px;font-weight:700;font-size:.91rem;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:linear-gradient(135deg,#2f6fea,#4385ff);box-shadow:0 12px 30px rgba(41,102,230,.23)}.button-secondary{color:#dbe6f7;border-color:var(--line);background:rgba(16,31,55,.65)}.hero-trust{display:flex;gap:clamp(18px,3vw,37px);margin-top:48px;padding-top:27px;border-top:1px solid var(--line);max-width:590px}.hero-trust div{display:flex;flex-direction:column}.hero-trust strong{font:700 1.3rem 'Manrope',sans-serif}.hero-trust span{color:#7f91ad;font-size:.75rem}.hero-visual{position:relative;min-width:0}.browser-card{border:1px solid rgba(122,159,220,.22);border-radius:16px;overflow:hidden;background:#0d192c;box-shadow:var(--shadow);transform:perspective(900px) rotateY(-3deg)}.browser-bar{height:43px;display:flex;align-items:center;gap:6px;padding:0 14px;background:#111f35;border-bottom:1px solid var(--line)}.browser-bar>span{width:7px;height:7px;border-radius:50%;background:#37465d}.browser-bar small{margin:auto;color:#566780;background:#0b1728;border-radius:5px;padding:3px 22px;font-size:.55rem}.browser-body{display:grid;grid-template-columns:20% 80%;aspect-ratio:1.22}.mock-sidebar{padding:28px 15px;background:#091426;border-right:1px solid var(--line)}.mock-sidebar i,.mock-title,.mock-subtitle{display:block;height:7px;border-radius:5px;background:#263a59;margin-bottom:18px}.mock-sidebar i:first-child{background:#3a78f4}.mock-content{padding:36px 28px}.mock-title{width:42%;height:13px;background:#d9e4f6}.mock-subtitle{width:65%;background:#32445f}.mock-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.mock-stats i{height:65px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,#132744,#0d1b31)}.mock-chart{position:relative;height:130px;margin-top:18px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:repeating-linear-gradient(0deg,transparent,transparent 31px,rgba(120,150,190,.08) 32px)}.mock-chart:after{content:'';position:absolute;inset:40% 5% 20%;border-top:3px solid var(--blue);transform:skewY(-8deg);filter:drop-shadow(55px 15px 0 #3978ff)}.floating-card{position:absolute;display:flex;background:rgba(16,31,54,.94);border:1px solid rgba(121,158,216,.25);border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.3);padding:14px}.floating-card small,.floating-card strong{display:block}.floating-card small{color:#8496b0;font-size:.65rem}.floating-result{left:-38px;bottom:-32px;align-items:center;gap:10px}.floating-result>span{display:grid;place-items:center;width:34px;height:34px;background:rgba(57,120,255,.14);color:var(--blue-light);border-radius:8px}.floating-experience{right:-24px;top:25px}.floating-experience strong{color:var(--blue-light);font:800 1.5rem 'Manrope',sans-serif}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,9vw,120px);align-items:center}.about-visual{position:relative;min-height:410px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 35% 35%,rgba(57,120,255,.25),transparent 28%),linear-gradient(145deg,#0f213d,#091526);overflow:hidden}.about-visual:before,.about-visual:after{content:'';position:absolute;border:1px solid rgba(102,149,231,.16);border-radius:50%}.about-visual:before{width:320px;height:320px;left:-40px;top:-35px}.about-visual:after{width:210px;height:210px;right:-40px;bottom:-40px}.experience-panel{position:absolute;left:clamp(24px,4vw,55px);top:50%;transform:translateY(-50%);z-index:2}.experience-panel span{display:block;color:var(--blue-light);font:800 clamp(4.5rem,9vw,7rem)/1 'Manrope',sans-serif;letter-spacing:-.08em}.experience-panel strong{font:600 clamp(1rem,2vw,1.3rem)/1.45 'Manrope',sans-serif}.about-lines{position:absolute;right:35px;bottom:40px}.about-lines i{display:block;width:80px;height:1px;background:rgba(107,155,235,.3);margin:12px}.about-copy>p{color:var(--muted)}.about-copy .lead-copy{color:#ccd8ea;font-size:1.1rem}.value-list{display:grid;gap:15px;margin-top:28px}.value-list>div,.contact-points>div{display:flex;gap:13px}.value-list>div>span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;color:#76a8ff;background:rgba(57,120,255,.12);font-size:.75rem}.value-list p,.contact-points p{margin:0}.value-list strong,.value-list small,.contact-points strong,.contact-points small{display:block}.value-list small,.contact-points small{color:var(--muted)}
.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.industry-card{padding:25px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(14,29,51,.55);transition:.25s}.industry-card:hover{transform:translateY(-4px);border-color:rgba(78,133,235,.38)}.industry-card span{display:grid;place-items:center;width:39px;height:39px;border-radius:9px;background:rgba(57,120,255,.11);color:#75a5ff;font-size:1.15rem}.industry-card h3{font:600 .92rem 'Manrope',sans-serif;margin:16px 0 0}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{display:flex;flex-direction:column;padding:29px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(17,34,59,.8),rgba(10,23,42,.8));transition:.25s}.service-card:hover{border-color:rgba(76,133,237,.4);transform:translateY(-4px)}.service-card:last-child{grid-column:2}.service-number{color:#6c9cff;font:700 .75rem 'Manrope',sans-serif;letter-spacing:.1em}.service-card h3{font:700 1.15rem 'Manrope',sans-serif;margin:17px 0 10px}.service-card p{color:var(--muted);font-size:.9rem;margin:.35rem 0}.service-card .best-for{color:#c3cee0;font-size:.8rem}.best-for span{color:#6e9fff;text-transform:uppercase;font-size:.67rem;font-weight:700;margin-right:5px}.use-case{margin-top:auto;padding-top:20px}.use-case strong,.use-case span{display:block}.use-case strong{color:#70819c;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.use-case span{font-size:.82rem;color:#b7c4d7;margin-top:3px}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.project-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#0d1b30;transition:.25s}.project-card:hover{transform:translateY(-5px);border-color:rgba(80,137,238,.38);box-shadow:0 18px 45px rgba(0,0,0,.2)}.project-preview,.modal-preview{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1.6;border:0;overflow:hidden;color:white}.project-preview{cursor:pointer}.project-blue{background:linear-gradient(140deg,#17366e,#285cbd)}.project-cyan{background:linear-gradient(140deg,#0c485b,#178eaa)}.project-violet{background:linear-gradient(140deg,#342663,#6f50bf)}.project-teal{background:linear-gradient(140deg,#164741,#238c80)}.project-indigo{background:linear-gradient(140deg,#1b2c68,#405fd0)}.project-sky{background:linear-gradient(140deg,#174058,#277da5)}.project-preview:before,.modal-preview:before{content:'';position:absolute;width:70%;height:70%;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.025)}.project-window{position:absolute;left:13px;top:12px;display:flex;gap:4px}.project-window i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.45)}.project-monogram{position:relative;font:800 clamp(2.5rem,5vw,4.2rem) 'Manrope',sans-serif;opacity:.9}.project-view{position:absolute;right:13px;bottom:12px;border-radius:6px;padding:5px 8px;background:rgba(5,15,30,.45);font-size:.66rem;opacity:0;transition:.2s}.project-preview:hover .project-view{opacity:1}.project-content{padding:22px}.project-category{color:#6f9fff;text-transform:uppercase;font-size:.65rem;font-weight:700;letter-spacing:.1em}.project-content h3{font:700 1.1rem 'Manrope',sans-serif;margin:8px 0}.project-content p{color:var(--muted);font-size:.86rem;margin:0 0 15px}.feature-tags{display:flex;flex-wrap:wrap;gap:6px}.feature-tags span{color:#9daec4;background:#14243c;border-radius:5px;padding:4px 7px;font-size:.67rem}.project-actions{display:flex;gap:16px;margin-top:19px;padding-top:15px;border-top:1px solid var(--line)}.project-actions a{color:#a9b9ce;font-size:.78rem;font-weight:700}.project-actions a:first-child{color:#75a5ff}.modal-backdrop{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(2,8,17,.84);backdrop-filter:blur(10px)}.project-modal{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;width:min(860px,100%);max-height:calc(100dvh - 40px);overflow:auto;border:1px solid rgba(127,160,213,.24);border-radius:22px;background:#0c192c;box-shadow:var(--shadow)}.modal-preview{aspect-ratio:auto;min-height:100%}.modal-copy{padding:clamp(28px,5vw,50px)}.modal-copy h2{font:700 clamp(1.65rem,4vw,2.35rem) 'Manrope',sans-serif;margin:8px 0 12px}.modal-copy>p{color:var(--muted)}.modal-copy h3{font-size:.85rem;margin-top:25px}.modal-copy ul{list-style:none;padding:0;margin:12px 0}.modal-copy li{margin:8px 0;color:#b9c6d8}.modal-copy li span{color:#67a0ff;margin-right:9px}.modal-close{position:absolute;z-index:3;right:14px;top:12px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:rgba(5,14,27,.7);color:white;font-size:1.3rem;cursor:pointer}
.process-list{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-list:before{content:'';position:absolute;left:3%;right:3%;top:24px;height:1px;background:linear-gradient(90deg,var(--blue),rgba(57,120,255,.1))}.process-step{position:relative;padding-top:67px}.process-step>span{position:absolute;top:0;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(79,137,239,.35);border-radius:50%;background:#0d1c32;color:#73a4ff;font-size:.75rem;font-weight:700}.process-step h3{font:700 1rem 'Manrope',sans-serif;margin:0 0 8px}.process-step p{color:var(--muted);font-size:.84rem;margin:0}.process-step:nth-child(n+5){margin-top:30px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.pricing-card{position:relative;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#0d1a2e}.pricing-card h3{font:700 1rem 'Manrope',sans-serif;margin:0 0 23px}.pricing-card small{display:block;color:#7587a2;text-transform:uppercase;font-size:.63rem;letter-spacing:.09em}.pricing-card>strong{display:block;color:#eaf1ff;font:700 clamp(1.25rem,2.5vw,1.65rem) 'Manrope',sans-serif;margin:3px 0 12px}.pricing-card p{color:var(--muted);font-size:.84rem;min-height:45px}.pricing-card a{display:flex;justify-content:space-between;color:#78a6fa;font-size:.8rem;font-weight:700;margin-top:20px}.pricing-featured{border-color:rgba(67,129,241,.55);background:linear-gradient(145deg,rgba(25,52,98,.8),#0e1e36)}.popular-label{position:absolute;right:17px;top:16px;color:#bcd2ff;background:rgba(57,120,255,.18);border-radius:99px;padding:3px 8px;font-size:.6rem;text-transform:uppercase}.pricing-note{display:flex;justify-content:center;align-items:center;gap:9px;color:#7f91ab;font-size:.8rem;margin:28px 0 0;text-align:center}.pricing-note span{display:grid;place-items:center;width:18px;height:18px;border:1px solid #405777;border-radius:50%;font-size:.65rem}
.contact-section{background:radial-gradient(circle at 20% 45%,rgba(45,102,220,.1),transparent 32%)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,8vw,100px);align-items:start}.contact-points{display:grid;gap:22px;margin-top:38px}.contact-points>div>span{color:#6c9dff;font:700 .7rem 'Manrope',sans-serif;padding-top:3px}.contact-card{padding:clamp(24px,4vw,38px);border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#10203a,#0b172a);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{min-width:0}.field-full{grid-column:1/-1}.field label{display:block;color:#bac7da;font-size:.76rem;font-weight:700;margin:0 0 7px}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(132,158,200,.19);border-radius:9px;background:#091628;color:#e8effa;padding:12px 13px;outline:0;transition:.2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#4d83e7;box-shadow:0 0 0 3px rgba(57,120,255,.09)}.field textarea{display:block;min-height:120px;resize:vertical}.field ::placeholder{color:#586a84}.validation-message{display:block;color:#ff8f9c;font-size:.7rem;margin-top:4px}.invalid{outline:none}.submit-button{width:100%;margin-top:21px}.form-note{color:#647690;text-align:center;font-size:.69rem;margin:11px 0 0}.success-state{text-align:center;padding:clamp(35px,7vw,75px) 10px}.success-state>span{display:grid;place-items:center;width:54px;height:54px;margin:auto;border-radius:50%;color:#63d5ad;background:rgba(55,201,148,.12);font-size:1.3rem}.success-state h3{font:700 1.6rem 'Manrope',sans-serif;margin:19px 0 8px}.success-state p{color:var(--muted);max-width:420px;margin:0 auto}.success-state .button{margin-top:25px}
.site-footer{border-top:1px solid var(--line);background:#050c17;padding:52px 0 22px}.footer-grid{display:flex;justify-content:space-between;align-items:start;gap:30px}.footer-grid p{color:#71829b;font-size:.82rem;margin:7px 0}.footer-links{display:flex;flex-wrap:wrap;gap:24px}.footer-links a,.footer-bottom{color:#8394ad;font-size:.78rem}.footer-bottom{display:flex;justify-content:space-between;margin-top:35px;padding-top:20px;border-top:1px solid rgba(146,169,207,.1)}.footer-bottom a{color:#a9b8cc}
#blazor-error-ui{color:#111;background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem;position:fixed;width:100%;z-index:3000}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem}
@media (max-width:980px){.hero{min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy .eyebrow{margin-top:0}.hero h1,.hero-lead,.hero-trust{margin-inline:auto}.hero-actions{justify-content:center}.hero-visual{width:min(680px,90%);margin:15px auto 0}.about-grid{grid-template-columns:1fr 1.2fr;gap:45px}.industry-grid{grid-template-columns:repeat(2,1fr)}.services-grid,.portfolio-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)}.service-card:last-child{grid-column:auto}.process-list{grid-template-columns:repeat(2,1fr)}.process-list:before{display:none}.process-step:nth-child(n){margin-top:0}.contact-grid{grid-template-columns:1fr}.contact-copy{max-width:700px}.site-nav{gap:15px}.site-nav a{font-size:.8rem}}
@media (max-width:760px){.container{width:min(100% - 28px,600px)}.section{padding:72px 0}.site-header{height:68px}.nav-toggle{display:block}.site-nav{position:absolute;left:14px;right:14px;top:61px;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:10px;border:1px solid var(--line);border-radius:13px;background:rgba(8,18,34,.98);box-shadow:var(--shadow);transform:translateY(-10px);opacity:0;visibility:hidden;transition:.2s}.site-nav.is-open{transform:none;opacity:1;visibility:visible}.site-nav a{padding:11px 12px;border-radius:7px}.site-nav a.active:not(.nav-cta):after{display:none}.site-nav .nav-cta{text-align:center;margin-top:4px}.hero{padding:120px 0 80px}.hero-grid{gap:40px}.hero h1{font-size:clamp(2.4rem,12.5vw,4rem)}.hero-trust{justify-content:center;gap:20px}.browser-card{transform:none}.floating-result{left:-8px}.floating-experience{right:-8px}.about-grid{grid-template-columns:1fr}.about-visual{min-height:320px;order:2}.about-copy{order:1}.services-grid,.portfolio-grid,.pricing-grid{grid-template-columns:1fr}.process-list{grid-template-columns:1fr}.process-step{display:grid;grid-template-columns:48px 1fr;gap:16px;padding-top:0}.process-step>span{position:static}.project-modal{grid-template-columns:1fr}.modal-preview{min-height:auto;aspect-ratio:1.9}.footer-grid,.footer-links{flex-direction:column}.footer-links{gap:10px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}}
@media (max-width:480px){.container{width:calc(100% - 24px)}.section-heading{margin-bottom:34px}.hero{padding-top:105px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hero-trust strong{font-size:1.05rem}.hero-trust span{font-size:.62rem}.hero-visual{width:100%}.mock-content{padding:25px 18px}.mock-sidebar{padding-inline:9px}.floating-card{position:relative;inset:auto;margin:10px 0 0}.floating-experience{display:none}.industry-grid{grid-template-columns:1fr 1fr;gap:9px}.industry-card{padding:18px 14px}.industry-card h3{font-size:.78rem}.service-card,.pricing-card,.project-content{padding:22px}.modal-backdrop{padding:10px}.project-modal{max-height:calc(100dvh - 20px)}.modal-copy{padding:24px 20px}.footer-bottom{flex-direction:column;gap:8px}.pricing-note{align-items:flex-start;text-align:left}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.service-card,.project-card,.industry-card{transition:none}}

/* Requested hero, pricing, and quick-contact refinements. */
.services-grid .service-card:last-child{grid-column:auto}
.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(38px,5vw,72px)}
.hero-copy{min-width:0}
.hero h1{font-size:clamp(2.75rem,5vw,4.65rem);overflow-wrap:normal}
.hero-copy .hero-actions{align-items:stretch}
.hero-copy .hero-actions .button{min-width:158px;white-space:nowrap}
.pricing-notes{display:grid;justify-items:center;gap:8px;margin-top:28px}
.pricing-notes .pricing-note{margin:0;max-width:850px}
.pricing-note-highlight{color:#b9c8dd;font-weight:600}
.floating-contact{position:fixed;z-index:900;right:clamp(10px,1.7vw,24px);top:50%;display:grid;gap:9px;transform:translateY(-50%)}
.floating-contact-link{position:relative;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(111,165,255,.3);border-radius:12px;background:rgba(12,27,49,.94);color:#8ab2ff;box-shadow:0 12px 30px rgba(0,0,0,.25);backdrop-filter:blur(12px);transition:transform .2s,background .2s,border-color .2s}
.floating-contact-link:hover,.floating-contact-link:focus-visible{transform:translateX(-3px);background:#173461;border-color:rgba(111,165,255,.65);outline:none}
.floating-contact-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.floating-contact-link>span{position:absolute;right:57px;padding:5px 9px;border:1px solid var(--line);border-radius:7px;background:#0b172a;color:#dce7f8;font-size:.7rem;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transform:translateX(5px);transition:opacity .2s,transform .2s}
.floating-contact-link:hover>span,.floating-contact-link:focus-visible>span{opacity:1;transform:none}

@media (max-width:1100px) and (min-width:981px){.hero{padding-top:150px}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(330px,.86fr);gap:34px}.hero h1{font-size:clamp(2.75rem,5vw,3.8rem)}.hero-lead{font-size:1.05rem}.hero-trust{gap:20px}.floating-experience{right:-8px}}
@media (max-width:980px){.hero{padding:132px 0 88px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:55px}.hero-copy{width:100%;max-width:760px;margin-inline:auto}.hero h1{max-width:740px;font-size:clamp(2.8rem,8vw,4.5rem)}.hero-copy .hero-actions{justify-content:center}.hero-visual{width:min(650px,88%);margin-top:0}}
@media (max-width:760px){.hero{padding:110px 0 72px}.hero-grid{gap:42px}.hero h1{font-size:clamp(2.45rem,11vw,3.75rem);line-height:1.08;margin-bottom:20px}.hero-lead{font-size:1.02rem;line-height:1.65}.hero-copy .hero-actions{width:min(100%,420px);margin:28px auto 0}.hero-copy .hero-actions .button{flex:1 1 0}.hero-trust{margin-top:38px}.hero-visual{width:min(100%,590px)}.floating-contact{right:10px;top:82px;bottom:auto;transform:none;gap:7px}.floating-contact-link{width:43px;height:43px;border-radius:11px}.floating-contact-link>span{display:none}}
@media (max-width:480px){.hero{padding-top:102px}.availability{margin-bottom:20px}.hero-copy>.eyebrow{max-width:290px;line-height:1.65}.hero h1{font-size:clamp(2.25rem,11.5vw,3.15rem);letter-spacing:-.05em}.hero-copy .hero-actions{display:grid;grid-template-columns:1fr;gap:11px}.hero-copy .hero-actions .button{width:100%;min-height:50px}.hero-trust{width:100%;padding-top:23px}.floating-contact{right:8px;top:78px}.floating-contact-link{width:40px;height:40px}.floating-contact-link svg{width:19px;height:19px}.pricing-notes{justify-items:start}.pricing-notes .pricing-note{width:100%}}

/* Compact industry, service, process, and portfolio presentation. */
.industry-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.industry-grid-compact .industry-card{display:flex;align-items:center;gap:15px;min-height:104px;padding:22px}
.industry-grid-compact .industry-card span{flex:0 0 42px}
.industry-grid-compact .industry-card h3{margin:0;line-height:1.45}
.service-card-compact{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:17px;min-height:126px;padding:24px 26px}
.service-card-compact .service-number{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(90,145,245,.22);border-radius:11px;background:rgba(57,120,255,.08)}
.service-card-compact h3{margin:0 0 7px;line-height:1.35}
.service-card-compact .best-for{margin:0;line-height:1.5}
.process-timeline{position:relative;grid-template-columns:minmax(0,1fr);gap:14px;width:min(100%,900px);margin-inline:auto}
.process-timeline:before{left:25px;right:auto;top:25px;bottom:25px;width:1px;height:auto;background:linear-gradient(180deg,var(--blue),rgba(57,120,255,.12))}
.process-timeline .process-step{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:20px;margin:0;padding:0}
.process-timeline .process-number{position:relative;z-index:1;top:auto;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(79,137,239,.42);border-radius:50%;background:#0d1c32;color:#83aeff;font-size:.72rem;font-weight:700;box-shadow:0 0 0 7px var(--bg)}
.process-timeline .process-copy{padding:20px 24px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,rgba(16,32,56,.8),rgba(10,22,40,.74));transition:border-color .2s,transform .2s}
.process-timeline .process-step:hover .process-copy{transform:translateX(4px);border-color:rgba(77,133,234,.38)}
.process-timeline h3{margin:0 0 4px}
.process-timeline p{margin:0}
.portfolio-more{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .45s ease,opacity .35s ease}
.portfolio-more.is-expanded{grid-template-rows:1fr;opacity:1}
.portfolio-more-inner{min-height:0;overflow:hidden}
.portfolio-grid-extra{padding-top:20px}
.portfolio-toggle-wrap{display:flex;justify-content:center;margin-top:30px}
.portfolio-toggle{min-width:150px}
.modal-actions{margin-top:28px}

@media (max-width:980px){.industry-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-compact{min-height:122px}.process-timeline{width:min(100%,760px)}}
@media (max-width:760px){.industry-grid-compact{grid-template-columns:1fr}.industry-grid-compact .industry-card{min-height:auto}.process-timeline .process-step{gap:14px}.process-timeline .process-copy{padding:18px 19px}.portfolio-grid-extra{padding-top:18px}}
@media (max-width:480px){.service-card-compact{grid-template-columns:38px minmax(0,1fr);gap:14px;min-height:108px;padding:20px}.service-card-compact .service-number{width:38px;height:38px}.process-timeline:before{left:21px}.process-timeline .process-step{grid-template-columns:44px minmax(0,1fr);gap:11px}.process-timeline .process-number{width:44px;height:44px;box-shadow:0 0 0 5px var(--bg)}.process-timeline .process-copy{padding:16px}.process-timeline .process-copy p{font-size:.8rem}.portfolio-toggle{width:100%}.modal-actions .button{width:100%}}

/* Section shortcuts on the right; contact actions on the left. */
.floating-side-nav{position:fixed;z-index:890;left:12px;top:50%;display:grid;gap:4px;width:40px;padding:10px 7px;transform:translateY(-50%);border:1px solid rgba(111,165,255,.18);border-radius:16px;background:rgba(9,21,39,.88);box-shadow:0 16px 38px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.floating-side-link{position:relative;display:grid;place-items:center;width:24px;height:28px;border-radius:8px;color:#71839e;outline:none;transition:color .2s,background .2s}
.side-nav-dot{width:7px;height:7px;border:1px solid currentColor;border-radius:50%;background:transparent;transition:transform .2s,background .2s,box-shadow .2s}
.side-nav-label{position:absolute;left:38px;padding:5px 9px;border:1px solid var(--line);border-radius:7px;background:#0b172a;color:#dce7f8;font-size:.7rem;font-weight:700;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-5px);transition:opacity .2s,transform .2s,visibility .2s}
.floating-side-link:hover,.floating-side-link:focus-visible{color:#9dbdff;background:rgba(57,120,255,.1)}
.floating-side-link:hover .side-nav-label,.floating-side-link:focus-visible .side-nav-label{opacity:1;visibility:visible;transform:none}
.floating-side-link.active{color:#76a8ff;background:rgba(57,120,255,.13)}
.floating-side-link.active .side-nav-dot{transform:scale(1.35);background:currentColor;box-shadow:0 0 0 4px rgba(57,120,255,.11)}

@media (max-width:1200px) and (min-width:761px){.container{width:min(1160px,calc(100% - 80px))}.floating-side-nav{left:4px;width:24px;padding:8px 2px;border-color:rgba(111,165,255,.12);background:rgba(9,21,39,.76)}.floating-side-link{width:18px;height:27px}.side-nav-label{left:29px}.floating-contact{right:4px}.floating-contact-link{width:36px;height:40px}.floating-contact-link>span{right:45px}}
@media (max-width:760px){.floating-side-nav{display:none}}
@media (max-width:760px){body{padding-bottom:64px}.floating-contact{top:auto;right:10px;bottom:10px;display:grid;grid-auto-flow:column;gap:4px;padding:4px;transform:none;border:1px solid rgba(111,165,255,.18);border-radius:14px;background:rgba(9,21,39,.92);box-shadow:0 14px 34px rgba(0,0,0,.28)}.floating-contact-link{width:38px;height:38px;border:0;border-radius:10px;box-shadow:none}}

/* Swapped rail positions. */
.floating-side-nav{left:auto;right:12px}
.side-nav-label{left:auto;right:38px;transform:translateX(5px)}
.floating-contact{right:auto;left:clamp(10px,1.7vw,24px)}
.floating-contact-link:hover,.floating-contact-link:focus-visible{transform:translateX(3px)}
.floating-contact-link>span{right:auto;left:57px;transform:translateX(-5px)}

@media (max-width:1200px) and (min-width:761px){.floating-side-nav{left:auto;right:4px}.side-nav-label{left:auto;right:29px}.floating-contact{right:auto;left:4px}.floating-contact-link>span{right:auto;left:45px}}
@media (max-width:760px){.floating-contact{right:auto;left:10px}}

/* Combined background and industry experience section. */
.experience-intro{margin-bottom:clamp(54px,7vw,88px)}
.experience-industries-heading{max-width:680px;margin:0 auto clamp(28px,4vw,42px);text-align:center}
.experience-industries-heading h3{font:700 clamp(1.45rem,3vw,2rem)/1.25 'Manrope',sans-serif;letter-spacing:-.03em;margin:8px 0 10px}
.experience-industries-heading p{margin:0;color:var(--muted)}

/* Selected Work single-grid reveal and detailed project modal. */
.portfolio-grid-item{min-width:0}
.portfolio-grid{grid-auto-rows:1fr}
.portfolio-grid-item.is-hidden{display:none}
.portfolio-grid-item.is-revealed .project-card{opacity:1;transform:none;animation:projectReveal .42s ease both}
.project-card{display:flex;flex-direction:column;height:100%;border-color:rgba(111,154,226,.18);background:linear-gradient(160deg,rgba(15,31,54,.98),rgba(8,20,37,.98));box-shadow:0 12px 30px rgba(0,0,0,.16)}
.project-card:hover{transform:translateY(-5px);border-color:rgba(91,148,247,.52);box-shadow:0 22px 48px rgba(0,0,0,.28),0 0 28px rgba(57,120,255,.08)}
.project-card-preview{width:100%;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid rgba(111,154,226,.18);border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background:#07111f}
.project-card-preview img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .35s ease}
.project-card:hover .project-card-preview img{transform:scale(1.025);filter:saturate(1.06)}
.project-preview{aspect-ratio:16/9}.project-preview-image{transition:transform .45s ease,filter .35s ease}.project-card:hover .project-preview-image{transform:scale(1.035);filter:saturate(1.08)}
.project-content{display:flex;flex:1;flex-direction:column;padding:18px}
.project-content h3{display:-webkit-box;min-height:2.7em;margin:7px 0 6px;overflow:hidden;font-size:1.02rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.project-content>p{display:-webkit-box;min-height:2.7em;margin:0 0 11px;overflow:hidden;font-size:.8rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.project-content .feature-tags{min-height:45px;margin:0;align-content:flex-start;gap:5px}.project-content .feature-tags span{padding:3px 6px;font-size:.62rem}
.project-price-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding:9px 10px;border:1px solid rgba(85,142,240,.2);border-radius:8px;background:rgba(57,120,255,.07);color:#91a3bc;font-size:.67rem}.project-price-hint strong{color:#dce9ff;font-weight:700}.project-price-hint em{flex:0 0 auto;border-radius:99px;padding:3px 6px;background:rgba(72,210,158,.1);color:#73d8b4;font-size:.58rem;font-style:normal;font-weight:700}
.project-view-button{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:9px;padding:10px 12px;border:1px solid rgba(91,145,240,.34);border-radius:8px;background:linear-gradient(135deg,rgba(47,111,234,.2),rgba(57,120,255,.1));color:#a8c7ff;font-size:.78rem;font-weight:700;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.project-view-button:hover,.project-view-button:focus-visible{transform:translateY(-1px);border-color:rgba(91,145,240,.7);background:rgba(57,120,255,.22);outline:none}
.project-preview.has-image:before,.modal-screenshot.has-image:before{display:none}
.project-preview-image{display:block;width:100%;height:100%;object-fit:cover}
@keyframes projectReveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.project-modal-detailed{grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);align-items:stretch;width:min(1080px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:hidden}
.modal-gallery{display:flex;min-width:0;max-height:calc(100dvh - 32px);flex-direction:column;padding:18px;border-right:1px solid var(--line);background:#081426;overflow-y:auto}
.modal-screenshot{position:relative;display:grid;place-items:center;width:100%;height:auto;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:13px;color:white;background:#050b12}
.modal-screenshot.has-image{display:block;aspect-ratio:16/9;background:#050b12}
.modal-screenshot-image{display:block;width:100%;height:100%;object-fit:cover}
.modal-screenshot.has-video{display:block;aspect-ratio:16/9;background:#050b12}
.modal-video{display:block;width:100%;height:100%;background:#02060c;object-fit:cover}
.modal-screenshot.has-video .screenshot-caption{top:12px;bottom:auto}
.modal-screenshot:before{content:'';position:absolute;width:70%;height:70%;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.025)}
.screenshot-layout{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr;gap:9px;width:76%;height:65%;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(6,16,31,.4);box-shadow:0 18px 35px rgba(0,0,0,.2)}
.screenshot-layout>span{display:block;border-radius:5px;background:rgba(226,237,255,.75)}
.screenshot-nav{grid-column:1/-1;width:100%;height:7px;opacity:.25}
.screenshot-title{width:65%;height:11px}
.screenshot-copy{width:88%;height:7px;opacity:.4}
.screenshot-panel{min-height:72px;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.12)}
.screenshot-layout-2{grid-template-columns:1fr 1.35fr}.screenshot-layout-2 .screenshot-panel-one{grid-row:2/4;min-height:120px}.screenshot-layout-3{grid-template-columns:repeat(3,1fr)}.screenshot-layout-3 .screenshot-title{grid-column:1/3}.screenshot-layout-3 .screenshot-copy{grid-column:1/-1}.screenshot-layout-3 .screenshot-panel{min-height:85px}
.screenshot-caption{position:absolute;left:14px;bottom:12px;padding:5px 8px;border-radius:6px;background:rgba(5,15,30,.58);font-size:.68rem;font-weight:700}
.screenshot-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.screenshot-thumbnail{min-width:0;padding:6px;border:1px solid transparent;border-radius:8px;color:white;text-align:left;cursor:pointer;opacity:.52;transition:opacity .2s,border-color .2s,transform .2s}
.screenshot-thumbnail img{display:block;width:100%;aspect-ratio:16/9;border-radius:5px;object-fit:cover}
.video-thumbnail-icon{display:grid!important;place-items:center;aspect-ratio:16/9;border-radius:5px;background:rgba(5,15,30,.55);font-size:1.15rem!important}
.screenshot-thumbnail:hover,.screenshot-thumbnail:focus-visible,.screenshot-thumbnail.active{opacity:1;border-color:rgba(137,179,255,.72);outline:none}.screenshot-thumbnail.active{transform:translateY(-2px)}
.screenshot-thumbnail span,.screenshot-thumbnail small{display:block}.screenshot-thumbnail span{font:700 .7rem 'Manrope',sans-serif}.screenshot-thumbnail small{overflow:hidden;margin-top:3px;font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}
.modal-project-details{align-self:stretch;max-height:calc(100dvh - 32px);padding:clamp(22px,3vw,32px);overflow-y:auto}
.modal-project-details h2{margin:5px 0 8px;font-size:clamp(1.55rem,3vw,2rem);line-height:1.15}.modal-project-details>p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.55}
.modal-project-details .modal-tags{display:flex;flex-wrap:wrap;gap:5px;margin:11px 0 3px}
.modal-tags span{padding:4px 8px;border-radius:5px;background:#14243c;color:#9fb1ca;font-size:.67rem}
.modal-project-details h3{margin:15px 0 7px;font-size:.8rem}.modal-project-details ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;margin:0;padding:0}.modal-project-details li{margin:0;font-size:.76rem;line-height:1.35}
.project-cost{margin-top:16px;padding:14px 15px;border:1px solid rgba(76,134,237,.38);border-radius:12px;background:linear-gradient(145deg,rgba(57,120,255,.13),rgba(57,120,255,.05));box-shadow:0 12px 26px rgba(0,0,0,.12)}
.project-cost small,.project-cost strong{display:block}.project-cost small{color:#8294ae;font-size:.67rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.project-cost strong{margin:4px 0 13px;color:#edf4ff;font:700 clamp(1.2rem,2vw,1.45rem) 'Manrope',sans-serif}
.pricing-tags{display:flex;flex-wrap:wrap;gap:6px}.pricing-tags span{padding:4px 7px;border:1px solid rgba(104,158,252,.2);border-radius:99px;color:#8db4fc;font-size:.61rem;font-weight:700}
.project-cost p{margin:9px 0 0;color:#8ea0b9;font-size:.68rem;line-height:1.45}.modal-actions{gap:9px;margin-top:14px}.modal-actions .button-primary{flex:1}

@media (max-width:900px){.project-modal-detailed{display:block;width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto}.modal-gallery,.modal-project-details{max-height:none;overflow:visible}.modal-gallery{border-right:0;border-bottom:1px solid var(--line)}.modal-screenshot{height:auto;aspect-ratio:16/9}}
@media (max-width:760px){.modal-gallery{padding:12px}.modal-screenshot{height:auto;aspect-ratio:16/9}.screenshot-layout{width:82%;height:64%;padding:12px}.screenshot-thumbnails{gap:5px}.screenshot-thumbnail{padding:5px}.screenshot-thumbnail small{display:none}.modal-project-details{padding:22px 18px}.modal-project-details ul{grid-template-columns:1fr}.project-cost{padding:13px}.modal-actions .button{width:100%}.project-price-hint{font-size:.65rem}}
@media (prefers-reduced-motion:reduce){.portfolio-grid-item.is-revealed .project-card{animation:none}}

/* Static GitHub Pages state helpers. */
.static-hidden{display:none!important}
.validation-message:empty{display:none}
select.invalid,input.invalid,textarea.invalid{border-color:#d95d6d!important;outline:none}

/* Four-step client journey. */
.client-journey{position:relative;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:100%;margin:0}
.client-journey:before{left:5%;right:5%;top:31px;bottom:auto;width:auto;height:1px;background:linear-gradient(90deg,rgba(57,120,255,.16),var(--blue),rgba(57,120,255,.16))}
.client-journey .process-step{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin:0;padding:0}
.client-journey .process-number{position:relative;z-index:1;top:auto;display:grid;place-items:center;width:62px;height:62px;border:1px solid rgba(92,148,247,.5);border-radius:18px;background:linear-gradient(145deg,#132a4c,#0c1a30);color:#94b9ff;font:700 .76rem 'Manrope',sans-serif;box-shadow:0 0 0 8px var(--bg),0 14px 30px rgba(0,0,0,.22)}
.client-journey .process-copy{flex:1;min-height:230px;padding:26px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(17,35,61,.9),rgba(9,21,39,.86));box-shadow:0 18px 42px rgba(0,0,0,.14);transition:transform .25s,border-color .25s,box-shadow .25s}
.client-journey .process-step:hover .process-copy{transform:translateY(-5px);border-color:rgba(77,133,234,.42);box-shadow:0 22px 50px rgba(0,0,0,.22)}
.client-journey h3{font:700 1.05rem/1.4 'Manrope',sans-serif;margin:0 0 12px}
.client-journey p{color:var(--muted);font-size:.86rem;line-height:1.7;margin:0}
@media (max-width:980px){.client-journey{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.client-journey:before{display:none}.client-journey .process-copy{min-height:190px}}
@media (max-width:600px){.client-journey{grid-template-columns:1fr;gap:14px}.client-journey:before{display:block;left:22px;right:auto;top:22px;bottom:22px;width:1px;height:auto;background:linear-gradient(180deg,var(--blue),rgba(57,120,255,.12))}.client-journey .process-step{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:stretch;gap:13px}.client-journey .process-number{width:46px;height:46px;border-radius:14px;box-shadow:0 0 0 5px var(--bg)}.client-journey .process-copy{min-height:0;padding:19px}.client-journey .process-step:hover .process-copy{transform:none}}
