/* NexoraDevs — fresh pastel brand system, loaded last. No frameworks or remote fonts. */
:root{color-scheme:light;--nx-ink:#223148;--nx-ink-soft:#3e4960;--nx-muted:#68758b;--nx-border:#e8e8f0;--nx-blue:#6d9eea;--nx-purple:#ac8fe4;--nx-cyan:#b9eef0;--nx-peach:#ffddc5;--nx-white:#fff;--nx-shadow:0 12px 34px rgba(56,65,105,.055)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.68;background:#fff;color:var(--nx-ink)}
::selection{background:#e5dcff;color:#1d243a}
.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}
a,button{transition:color .15s,background .2s,border-color .2s,box-shadow .2s,transform .2s}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #7c6ed8;outline-offset:3px}
.nx-gradient-text{background:linear-gradient(105deg,#567ac9,#9877d9 58%,#8ecdc6);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:750;color:#7870a1;margin:0 0 15px}
.nx-header{height:88px;padding:0;background:#fffc;border-bottom:1px solid #efedf3;box-shadow:none}
.nx-header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:26px}
.nx-brand{display:inline-flex;align-items:center;flex:none;gap:0}
.nx-brand img{display:block;height:auto;width:186px;max-width:100%}
.nx-header nav{display:flex;align-items:center;gap:24px}
.nx-header nav>a{font-size:12px;letter-spacing:.02em;color:#3e4660;font-weight:700;padding:9px 0}
.nx-header nav>a:hover{color:#8c6bd6}
.nx-header nav .nx-social{font-weight:600;color:#78819a}
.nx-header nav .nx-whatsapp{padding:13px 18px;background:#243149;color:#fff;border:1px solid #243149;white-space:nowrap;font-size:11px;letter-spacing:.045em}
.nx-header nav .nx-whatsapp:hover{background:#4d569b;color:#fff}
.nx-menu{background:#fff;border:1px solid #dedce9;color:#29324d;padding:9px 12px}
.btn{border-radius:0;text-decoration:none;letter-spacing:.035em;font-size:12px;font-weight:800;min-height:52px;padding:15px 22px;gap:18px;white-space:normal;text-align:center}
.btn.primary{background:#29344f!important;color:white!important;border:1px solid #29344f!important;box-shadow:none}
.btn.primary:hover{background:#555f9e!important;border-color:#555f9e!important;transform:translateY(-2px)}
.btn.outline{background:white;color:#283651;border-color:#cdd2e1}
.btn.outline:hover{background:#f2f3fb}
.nx-secondary-link,.nx-arrow-link{display:inline-flex;align-items:center;gap:14px;color:#384b7e;font-size:13px;font-weight:750;border-bottom:1px solid #a9b7d0;padding-bottom:5px}
.nx-arrow-link:hover,.nx-secondary-link:hover{color:#8062bc;border-color:#8062bc}
.nx-hero{background:radial-gradient(ellipse at 91% 21%,#f5f0ff 0%,transparent 36%),radial-gradient(ellipse at 65% 95%,#edfaf7,transparent 35%),#fff;border-bottom:1px solid #edf0f4}
.nx-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:55px;padding-top:86px;padding-bottom:96px;min-height:645px}
.nx-kicker{letter-spacing:.14em;font-size:11px;color:#77738e;font-weight:800;display:flex;gap:10px;align-items:center;margin:0 0 22px}
.nx-kicker-dot{height:8px;width:8px;border-radius:50%;background:#b5a7e9;display:inline-block}
.nx-hero h1{font-size:clamp(48px,5.3vw,78px);line-height:1.09;letter-spacing:-.065em;margin:0 0 24px;max-width:750px;font-weight:800;color:#26344b}
.nx-hero-lead{font-size:17px;line-height:1.75;max-width:560px;color:#647087;margin:0}
.nx-hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:34px}
.nx-hero-note{font-size:12px;color:#79839a;margin-top:55px;max-width:415px;display:flex;align-items:flex-start;gap:12px;line-height:1.6}
.nx-note-line{width:24px;height:1px;display:block;background:#a9a0da;margin-top:10px;flex:none}
.nx-hero-art{height:470px;display:grid;place-items:center;position:relative;overflow:hidden}
.nx-hero-art:before{content:"";width:76%;height:76%;position:absolute;background:radial-gradient(circle at 30% 45%,#e6f5ff,#f5eeff 56%,#f5fbf9 100%);border-radius:50%;filter:blur(3px)}
.nx-hero-art img{position:relative;width:min(100%,365px);max-height:365px;object-fit:contain;filter:drop-shadow(0 20px 20px rgba(130,128,194,.07));z-index:1}
.nx-orbit{border:1px solid rgba(136,154,220,.25);position:absolute;border-radius:50%;width:90%;height:78%;transform:rotate(-25deg)}
.nx-orbit.b{transform:rotate(27deg);width:84%;height:84%;border-color:rgba(172,143,228,.20)}
.nx-art-caption{position:absolute;bottom:14px;right:30px;color:#8a93a7;letter-spacing:.19em;font-size:10px;font-weight:750}
.nx-art-caption span{color:#af84c8;margin:0 6px}
.nx-credibility{border-bottom:1px solid #eeeef2;background:#fafafd}
.nx-credibility-inner{display:flex;align-items:center;gap:36px;justify-content:space-between;flex-wrap:wrap;padding-block:23px}
.nx-credibility-inner>span{font-size:10px;letter-spacing:.12em;color:#939ab0;font-weight:750}
.nx-credibility-inner strong{font-size:12px;font-weight:650;color:#66728c}
.nx-section{padding-block:104px}
.nx-section-top{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:38px}
.nx-section-top h2{font-size:clamp(34px,3.65vw,53px);letter-spacing:-.052em;line-height:1.14;max-width:680px;margin:0;color:#25334c}
.nx-section-top>p{max-width:340px;color:#6a748a;font-size:14px;line-height:1.8;margin:0 0 5px}
.nx-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nx-service-card{background:#fff;border:1px solid var(--nx-border);box-shadow:0 8px 22px rgba(91,91,124,.035);min-width:0;display:flex;flex-direction:column}
.nx-service-card:hover{box-shadow:var(--nx-shadow);transform:translateY(-3px);border-color:#dad4ef}
.nx-service-image{height:194px;overflow:hidden;display:block;background:#f7f6ff}
.nx-service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.nx-service-card:hover .nx-service-image img{transform:scale(1.035)}
.nx-service-card-body{padding:24px 25px 27px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.nx-service-card-body .eyebrow{font-size:10px;color:#9892b0}
.nx-service-card h3{font-size:21px;line-height:1.3;letter-spacing:-.03em;margin:0 0 12px;font-weight:780;color:#26324a}
.nx-service-card h3 a:hover{color:#705bc2}
.nx-service-card-body>p:not(.eyebrow){font-size:13px;line-height:1.75;color:#6c768c;margin:0 0 22px}
.nx-service-card .nx-arrow-link{margin-top:auto;font-size:12px}
.nx-section-link{text-align:right;margin-top:30px}
.nx-portfolio-section,.nx-soft-section{background:#faf9ff;border-block:1px solid #efeef6}
.nx-portfolio-empty{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:300px;border:1px solid #e8e6f0;background:#fff}
.nx-empty-visual{position:relative;overflow:hidden;background:linear-gradient(140deg,#f0f5ff,#f5f0ff 60%,#edfbf7);min-height:300px}
.nx-wire{position:absolute;border:1px solid #d6d5ec;width:60%;height:68%;top:17%;left:20%;transform:rotate(-12deg)}.nx-wire.two{transform:rotate(7deg);left:25%;border-color:#bad9e6}.nx-wire.three{transform:rotate(22deg);left:12%;border-color:#dccbea}
.nx-portfolio-empty>div:last-child{padding:52px 55px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.nx-portfolio-empty h3{font-size:27px;letter-spacing:-.04em;line-height:1.2;margin:0 0 12px}
.nx-portfolio-empty p:not(.eyebrow){color:#667289;font-size:14px;line-height:1.8;margin:0 0 20px}
.nx-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nx-project-card{background:#fff;border:1px solid #e3e4ee;min-width:0}
.nx-project-picture{height:220px;overflow:hidden;background:linear-gradient(135deg,#edf4ff,#f4efff)}
.nx-project-picture img{width:100%;height:100%;object-fit:cover;display:block}
.nx-project-placeholder{height:100%;display:grid;place-items:center;font-size:110px;color:#a3aed0;font-weight:850}
.nx-project-placeholder span{color:#b9a0dc}
.nx-project-copy{padding:24px}.nx-project-copy h3{font-size:22px;margin:2px 0 10px}.nx-project-copy p:not(.eyebrow){font-size:13px;color:#66718a}
.nx-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.nx-plan{background:#fff;border:1px solid #e5e5ee;padding:30px;display:flex;flex-direction:column;align-items:stretch;min-width:0}
.nx-plan.is-featured{border:1px solid #cbbde8;box-shadow:0 14px 36px rgba(102,92,139,.075);background:linear-gradient(165deg,#f9f6ff,#fff 55%)}
.nx-plan h3{font-size:24px;letter-spacing:-.035em;margin:0 0 10px}
.nx-plan-top>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#6e7890;min-height:67px;margin:0}
.nx-price{font-size:34px;letter-spacing:-.05em;font-weight:850;border-bottom:1px solid #e8eaf1;padding:12px 0 20px;white-space:nowrap}
.nx-price small{display:block;font-size:10px;letter-spacing:.15em;font-weight:750;color:#8c93aa}
.nx-plan ul{padding:10px 0 0 21px;font-size:13px;line-height:2;color:#4c596f;margin-bottom:28px}
.nx-plan .btn{margin-top:auto}
.nx-fine{font-size:12px;color:#7b8599;margin-top:20px;max-width:1050px}
.nx-addon-banner{padding:35px 0 0;margin-top:35px;border-top:1px solid #ebecf1;display:flex;align-items:center;gap:25px;justify-content:space-between}
.nx-addon-banner h3{font-size:21px;margin:0 0 5px}.nx-addon-banner p{color:#6f7890;font-size:13px;margin:0;max-width:660px}
.nx-review-section{background:linear-gradient(115deg,#fffaf8,#fbfaff 64%,#f4fbfa);border-block:1px solid #f0edf3}
.nx-review-section .empty-review{background:white;max-width:100%;border:1px solid #ebe6f4}
.nx-review-section .empty-review h3{color:#29334b}
.nx-review-section .review-card{background:#fff;border:1px solid #ebe4f4}
.nx-review-section .review-card blockquote{color:#2c344b}
.nx-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.nx-steps article{border-top:2px solid #c7b7e5;padding:20px 5px 12px 0}
.nx-steps article span{font-size:11px;letter-spacing:.1em;color:#a292c5}
.nx-steps article h3{font-size:20px;margin:12px 0 8px}.nx-steps article p{font-size:13px;color:#6c7890;margin:0}
.nx-about-section{background:#f8f9fc;border-block:1px solid #e9ebf1}
.nx-about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.nx-about-grid h2{font-size:clamp(34px,3.9vw,54px);line-height:1.15;margin:0 0 18px;letter-spacing:-.05em}
.nx-about-grid>div>p:not(.eyebrow){font-size:15px;color:#677188;max-width:630px;margin-bottom:24px}
.nx-founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.nx-founder-grid article{background:#fff;border:1px solid #e4e6ed;padding:26px;min-height:145px;display:flex;flex-direction:column;justify-content:flex-end}
.nx-founder-grid article:first-child{border-top:3px solid #a7bfe9}.nx-founder-grid article:last-child{border-top:3px solid #c5b4ea}
.nx-founder-grid p{letter-spacing:.13em;font-size:10px;color:#9b93b7;margin:0 0 7px}
.nx-founder-grid h3{font-size:19px;letter-spacing:-.025em;margin:0}
.nx-faq{max-width:890px}.nx-faq details{border-bottom:1px solid #e5e6ee;padding:20px 0}
.nx-faq summary{font-size:15px;font-weight:720;cursor:pointer;color:#344159;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px}
.nx-faq summary::-webkit-details-marker{display:none}.nx-faq summary:after{content:'+';font-size:24px;font-weight:350;color:#7d78ab}.nx-faq details[open] summary:after{content:'−'}
.nx-faq details p{font-size:14px;max-width:690px;color:#68738a}
.nx-page-hero{padding:102px 0 76px;background:linear-gradient(110deg,#fcfaff,#f5f8ff 48%,#f1fbfa);border-bottom:1px solid #efedf6}
.nx-page-hero h1{font-size:clamp(44px,5.5vw,71px);line-height:1.11;letter-spacing:-.058em;max-width:820px;margin:8px 0 22px}
.nx-page-hero p:not(.eyebrow){color:#67738a;max-width:690px;font-size:17px;margin:0}
.nx-closing{background:linear-gradient(110deg,#eaf4ff,#f3edff 66%,#ecfaf7);border-top:1px solid #e7e5f2}
.nx-closing-inner{padding:62px 0;display:flex;justify-content:space-between;align-items:center;gap:30px}
.nx-closing h2{font-size:clamp(30px,3.3vw,47px);margin:0 0 7px;letter-spacing:-.04em}
.nx-closing p:not(.eyebrow){font-size:14px;color:#6a728b;margin:0}
.nx-footer{background:#fff;border-top:none}
.nx-footer-grid{padding:70px 0 55px;display:grid;grid-template-columns:2.1fr 1fr 1fr 1fr;gap:35px}
.nx-footer-logo img{width:210px;height:auto;display:block}
.nx-footer-grid>div:first-child p{font-size:13px;color:#6c7890;margin-top:19px}
.nx-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.nx-footer-links strong{font-size:12px;margin-bottom:8px;color:#2c3951}
.nx-footer-links a{font-size:12px;color:#667087}.nx-footer-links a:hover{color:#745bb7}
.nx-footer-bottom{border-top:1px solid #e9ebf2;padding:22px 0;display:flex;justify-content:space-between;gap:25px;color:#8390a3;font-size:12px}
.nx-service-hero{background:linear-gradient(110deg,#faf9ff,#eef6ff 55%,#f1fbf9);padding:34px 0 85px;border-bottom:1px solid #e8ebf4}
.nx-breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#8290a7;margin-bottom:55px}
.nx-breadcrumbs a{color:#506285}.nx-breadcrumbs a:hover{color:#8069ba}
.nx-service-hero-grid{display:grid;grid-template-columns:1fr .92fr;gap:65px;align-items:center}
.nx-service-hero h1{font-size:clamp(43px,5vw,66px);line-height:1.1;letter-spacing:-.055em;margin:0 0 24px}
.nx-service-lead{font-size:16px;line-height:1.82;color:#69748c;max-width:650px}
.nx-service-hero-visual{background:#fff;border:1px solid #e8e9f2}
.nx-service-hero-visual img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}
.nx-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.nx-feature-grid>div{padding:24px;border:1px solid #e8e6f1;min-height:160px;background:linear-gradient(135deg,#fff,#faf9ff)}
.nx-feature-grid>div:nth-child(2n){background:linear-gradient(135deg,#fff,#f3f9ff)}
.nx-feature-grid span{font-size:11px;color:#9d8ac6}.nx-feature-grid h3{font-size:17px;line-height:1.45;margin:18px 0 0}
.nx-service-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.nx-service-two-cols h2,.nx-service-faq h2{font-size:clamp(32px,3.6vw,49px);line-height:1.18;letter-spacing:-.05em;margin:0 0 20px}
.nx-service-two-cols>div>p:not(.eyebrow){font-size:14px;color:#707990;max-width:420px}
.nx-checklist{list-style:none;margin:0;padding:0}
.nx-checklist li{padding:14px 0 14px 32px;border-bottom:1px solid #e3e4ee;position:relative;color:#41516a;font-weight:600;font-size:14px}
.nx-checklist li:before{content:'✓';position:absolute;left:0;top:14px;color:#8a79bf}
.nx-service-steps{grid-template-columns:repeat(3,1fr)}
.nx-service-faq{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px}
.nx-related{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.nx-related a{border:1px solid #e4e5ee;background:#fff;padding:25px;min-height:130px;display:flex;flex-direction:column;align-items:start;justify-content:space-between;font-size:18px;font-weight:700;line-height:1.35}
.nx-related a:hover{background:#f8f6ff;border-color:#cec5e4;color:#6954a6}
.nx-related a span:last-child{color:#9982cd}
.nx-contact-details{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:960px}
.nx-contact-details h2{font-size:clamp(32px,4vw,51px);letter-spacing:-.05em;margin:0 0 15px}
.nx-contact-details p{color:#67738a}.nx-contact-details>div:last-child{border-left:1px solid #e4e7f0;padding-left:45px}
.nx-contact-details strong{color:#25334b}
.nx-contact-details a{color:#526bb0}
/* Legacy policy and reviews use existing semantic styles with pastel overrides */
.subhero{background:linear-gradient(110deg,#faf9ff,#f1f8ff);border-bottom:1px solid #eaebf4}
.legal-wrap{max-width:1160px}.legal-copy h2{color:#27324c}.legal-copy p,.legal-copy li{line-height:1.9}
.review-card,.empty-review{box-shadow:none}.review-controls{display:flex;justify-content:flex-end}
@media(max-width:1120px){.nx-header nav{gap:15px}.nx-header nav>a{font-size:11px}.nx-brand img{width:163px}.nx-hero-grid{gap:20px}.nx-footer-grid{grid-template-columns:1.5fr 1fr 1fr}}
@media(max-width:900px){.nx-menu{display:block}.nx-header{height:74px}.nx-header nav{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;align-items:stretch;gap:10px;padding:18px 24px 22px;background:#fff;border-bottom:1px solid #e9e6f0;box-shadow:0 12px 25px #2a33521a}.nx-header nav.open{display:flex}.nx-header nav>a{font-size:13px}.nx-header nav .nx-whatsapp{padding:15px}.nx-hero-grid{grid-template-columns:1fr;padding-block:75px 45px;gap:0}.nx-hero-art{max-width:480px;width:100%;margin:0 auto;height:350px}.nx-hero-art img{width:280px}.nx-services-grid,.nx-pricing-grid,.nx-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nx-service-hero-grid{gap:25px}.nx-feature-grid{grid-template-columns:repeat(2,1fr)}.nx-about-grid,.nx-service-two-cols{gap:35px}.nx-section{padding-block:75px}}
@media(max-width:680px){.wrap{width:min(100% - 36px,1160px)}.nx-brand img{width:160px}.nx-hero-grid{padding-top:60px}.nx-hero h1{font-size:clamp(43px,11vw,61px)}.nx-hero-lead{font-size:15px}.nx-hero-art{height:270px}.nx-hero-art img{width:230px}.nx-hero-note{margin-top:35px}.nx-credibility-inner{justify-content:flex-start;gap:12px 24px}.nx-credibility-inner>span{flex-basis:100%}.nx-credibility-inner strong{font-size:11px}.nx-section-top{display:block;margin-bottom:28px}.nx-section-top h2{margin-bottom:14px}.nx-services-grid,.nx-pricing-grid,.nx-project-grid,.nx-feature-grid,.nx-about-grid,.nx-founder-grid,.nx-service-two-cols,.nx-related,.nx-contact-details,.nx-service-hero-grid,.nx-service-faq{grid-template-columns:1fr}.nx-steps{grid-template-columns:repeat(2,1fr)}.nx-portfolio-empty{grid-template-columns:1fr}.nx-empty-visual{min-height:180px}.nx-portfolio-empty>div:last-child{padding:30px}.nx-section{padding-block:60px}.nx-addon-banner,.nx-closing-inner{flex-direction:column;align-items:flex-start}.nx-closing-inner{padding-block:50px}.nx-footer-grid{grid-template-columns:repeat(2,1fr);gap:30px;padding-block:45px}.nx-footer-grid>div:first-child{grid-column:1/-1}.nx-footer-bottom{flex-direction:column;gap:7px}.nx-page-hero{padding:75px 0 55px}.nx-service-hero{padding-bottom:55px}.nx-breadcrumbs{margin-bottom:28px}.nx-service-hero-visual{margin-top:22px}.nx-contact-details>div:last-child{padding-left:0;border-left:0;border-top:1px solid #e7e8f0;padding-top:30px}.nx-hero-actions .btn{width:100%}.nx-plan-top>p:not(.eyebrow){min-height:0}}
@media(max-width:420px){.nx-steps{grid-template-columns:1fr}.nx-hero h1{font-size:40px}.nx-footer-grid{grid-template-columns:1fr}.nx-footer-grid>div:first-child{grid-column:auto}.nx-plan{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
