@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:light;--bg:#f8f8fc;--surface:#fff;--soft:#f0eff8;--text:#20212a;--muted:#686b7a;--line:rgba(37,35,58,.1);--purple:#6d4aff;--purple-deep:#5638e7;--blue:#3478f6;--green:#16a875;--shadow:0 20px 60px rgba(45,38,83,.1);--header:rgba(248,248,252,.88);--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.65;transition:background .25s,color .25s}body[data-theme=dark]{color-scheme:dark;--bg:#14151b;--surface:#1c1d26;--soft:#222431;--text:#f5f5fa;--muted:#b2b5c5;--line:rgba(235,233,255,.12);--purple:#9b87ff;--purple-deep:#8068ff;--blue:#6da0ff;--green:#2ac58b;--shadow:0 20px 60px rgba(0,0,0,.24);--header:rgba(20,21,27,.9)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8b78ff;outline-offset:3px}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section{padding:112px 0}.skip-link{position:absolute;left:16px;top:-80px;background:var(--text);color:var(--bg);padding:12px 18px;z-index:100}.skip-link:focus{top:12px}.site-header{height:78px;position:sticky;top:0;z-index:50;background:var(--header);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font:800 21px var(--display);letter-spacing:-1px;display:inline-flex;align-items:center;gap:10px}.brand-mark{width:36px;height:36px;color:var(--purple)}.brand-accent{color:var(--purple)}.main-nav{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:600}.main-nav>a:not(.nav-cta){color:var(--muted);transition:color .2s}.main-nav>a:hover{color:var(--purple)}.nav-cta{padding:11px 15px;border-radius:9px;color:#fff;background:var(--purple);margin-left:4px}.nav-cta span{margin-left:8px}.theme-toggle,.menu-toggle{border:0;color:var(--text);background:transparent;display:grid;place-items:center;cursor:pointer}.theme-toggle{width:39px;height:39px;border-radius:50%;border:1px solid var(--line);margin-left:-14px}.theme-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}.icon-sun{display:none}body[data-theme=dark] .icon-moon{display:none}body[data-theme=dark] .icon-sun{display:block}.menu-toggle{display:none}
.hero{padding:75px 0 20px;min-height:650px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 46%,rgba(109,74,255,.095),transparent 34%),var(--bg)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:500px;gap:35px}.eyebrow{font-size:10px;letter-spacing:1.55px;font-weight:700;color:var(--purple);margin:0 0 18px}.eyebrow>span{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:8px}.hero h1,.section-heading h2,.about-copy h2,.contact-copy h2{font:700 clamp(40px,5vw,65px)/1.08 var(--display);letter-spacing:-3.4px;margin:0}.hero h1 em,.section-heading h2 em,.about-copy h2 em,.contact-copy h2 em{color:var(--purple);font-style:normal}.hero-text{max-width:495px;margin:23px 0;color:var(--muted);font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;padding:0 19px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;border:0}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--purple);box-shadow:0 8px 22px rgba(109,74,255,.2)}.button-primary:hover{background:var(--purple-deep);box-shadow:0 12px 27px rgba(109,74,255,.28)}.button-quiet{color:var(--text);background:transparent}.button-quiet span{color:var(--purple)}.hero-note{display:flex;align-items:center;gap:12px;margin-top:46px;color:var(--text);font-size:12px;font-weight:700;line-height:1.5}.hero-note small{font-size:11px;color:var(--muted);font-weight:400}.note-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;color:var(--purple);background:#e9e4ff;font-size:20px}.hero-art{height:440px;position:relative;display:grid;place-items:center}.art-orbit{position:absolute;border:1px solid rgba(109,74,255,.12);border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:480px;height:340px}.orbit-two{width:400px;height:280px;transform:rotate(22deg);border-color:rgba(52,120,246,.12)}.browser-card{position:absolute;width:min(420px,90%);height:290px;border-radius:13px;overflow:hidden;background:var(--surface);box-shadow:0 28px 70px rgba(39,28,91,.2);transform:rotate(-4deg) translate(-14px,-3px);z-index:2;border:1px solid rgba(255,255,255,.55)}.browser-bar{height:35px;background:#f0eff5;display:flex;align-items:center;gap:5px;padding:0 11px;color:#777;font:9px var(--font)}.browser-bar i{width:6px;height:6px;border-radius:50%;background:#c7c3d4}.browser-bar span{margin:auto;background:#fff;border-radius:9px;padding:4px 39px;color:#a19eac}.browser-bar b{letter-spacing:1px}.browser-content{height:calc(100% - 35px);padding:16px;background:linear-gradient(135deg,#f8f6ff,#f0f5ff)}.mock-nav{display:flex;align-items:center;gap:14px}.mock-logo{width:24px;height:8px;border-radius:4px;background:var(--purple);margin-right:auto}.mock-nav>span{width:31px;height:4px;background:#d2cfe0;border-radius:4px}.mock-nav b{width:48px;height:15px;border-radius:4px;background:var(--purple)}.mock-hero{height:153px;display:flex;align-items:center;justify-content:space-between;padding:12px 18px}.mock-hero small{display:block;font:600 6px var(--font);letter-spacing:1px;color:#837e99}.mock-hero strong{display:block;font:800 21px/1.2 var(--display);letter-spacing:-1px;color:#29243b;margin:7px 0}.mock-button{display:block;width:58px;height:14px;background:#6d4aff;border-radius:4px}.mock-shape{width:125px;height:105px;border-radius:50% 50% 45% 10%;background:linear-gradient(140deg,#ccc1ff,#bce5df);position:relative;overflow:hidden}.mock-shape i{position:absolute;width:64px;height:90px;right:14px;top:28px;border-radius:40px 40px 3px 3px;background:#8873ea;transform:rotate(-20deg)}.mock-shape b{position:absolute;width:34px;height:34px;border-radius:50%;background:#ffd6b0;right:38px;top:15px}.mock-lines{display:flex;gap:7px}.mock-lines span{height:28px;flex:1;background:#fff;border-radius:5px}.phone-card{position:absolute;width:130px;height:246px;border-radius:20px;background:#282536;padding:7px;right:13px;bottom:55px;z-index:4;transform:rotate(8deg);box-shadow:0 22px 50px rgba(33,25,71,.25)}.phone-notch{width:40px;height:7px;background:#282536;position:absolute;top:7px;left:calc(50% - 20px);border-radius:0 0 6px 6px;z-index:2}.phone-inner{height:100%;border-radius:15px;background:#fff;padding:24px 9px 8px}.phone-logo{width:29px;height:7px;display:block;background:#6d4aff;border-radius:5px;margin-bottom:9px}.phone-photo{height:87px;background:linear-gradient(145deg,#c7bbff,#b8e3dc);border-radius:8px}.phone-line{display:block;height:6px;background:#dfdce9;border-radius:5px;margin:10px 0 0}.phone-line.short{width:65%;margin-top:5px}.phone-action{display:block;height:19px;border-radius:5px;background:#6d4aff;margin-top:11px}.float-tag{position:absolute;z-index:5;padding:10px 13px;border-radius:9px;background:var(--surface);box-shadow:0 10px 30px rgba(37,31,70,.12);font-size:10px;font-weight:700;white-space:nowrap}.float-tag>span{color:var(--purple);margin-right:6px}.tag-a{top:55px;right:45px}.tag-b{left:5px;bottom:89px}.tag-check{color:#fff!important;display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--green)}.hero-bottom{height:48px;display:flex;align-items:center;justify-content:space-between;color:#a1a1ad;font-size:9px;letter-spacing:1px}.scroll-label{color:var(--muted)}.scroll-label span{margin-left:8px;color:var(--purple)}
.services-section{background:var(--surface)}.section-heading{max-width:640px;margin-bottom:48px}.section-heading h2,.about-copy h2,.contact-copy h2{font-size:clamp(36px,4.5vw,53px);letter-spacing:-2.7px}.section-heading>p:last-child{max-width:550px;color:var(--muted);line-height:1.8;margin:17px 0 0}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}.service-card{grid-column:span 2;min-height:270px;position:relative;padding:25px 23px 20px;border-radius:13px;transition:transform .25s,box-shadow .25s}.service-card:nth-child(4){grid-column:2/span 2}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.lavender{background:#f1edff}.blue{background:#edf4ff}.mint{background:#e9f7f1}.peach{background:#fff2eb}.gray{background:#f0f1f6}body[data-theme=dark] .lavender{background:#28243c}body[data-theme=dark] .blue{background:#202b3c}body[data-theme=dark] .mint{background:#1c322c}body[data-theme=dark] .peach{background:#342721}body[data-theme=dark] .gray{background:#252630}.service-number{position:absolute;right:20px;top:18px;font:600 10px var(--display);color:var(--muted);opacity:.7}.service-icon{width:41px;height:41px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.65);color:var(--purple);margin-bottom:24px}.service-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font:700 17px var(--display);letter-spacing:-.4px;margin:0 0 8px}.service-card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0;min-height:62px}.service-card>a{display:flex;justify-content:space-between;align-items:center;padding-top:15px;margin-top:12px;border-top:1px solid rgba(70,66,90,.1);font-size:10px;font-weight:700;color:var(--purple)}.service-banner{margin-top:46px;padding:29px 34px;background:#28233f;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:22px}.service-banner>div{display:flex;align-items:center;gap:15px}.banner-spark{font-size:25px;color:#a99aff}.service-banner h3{font:700 18px/1.35 var(--display);margin:0}.service-banner>p{max-width:285px;color:#d0cede;font-size:12px;margin:0}.button-light{background:#fff;color:#29243f;white-space:nowrap;font-size:11px;min-height:44px;padding:0 15px}.button-light:hover{box-shadow:0 8px 20px rgba(0,0,0,.2)}
.portfolio-section{background:var(--bg)}.portfolio-heading{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:30px}.portfolio-heading>p{max-width:350px;color:var(--muted);margin-bottom:7px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;row-gap:40px}.project-card{min-width:0}.project-image{display:block;position:relative;overflow:hidden;background:var(--soft);height:235px;border-radius:9px}.project-large .project-image{height:285px}.project-image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s}.project-image:hover img{transform:scale(1.035)}.image-open{position:absolute;right:13px;top:13px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:#252334;background:rgba(255,255,255,.9);opacity:0;transform:translateY(4px);transition:.2s}.project-image:hover .image-open,.project-image:focus-visible .image-open{opacity:1;transform:translateY(0)}.project-meta{display:flex;justify-content:space-between;align-items:end;padding:14px 2px}.project-type{font-size:9px;letter-spacing:1.2px;font-weight:700;color:var(--muted)}.project-meta h3{font:700 19px var(--display);margin:3px 0 0;letter-spacing:-.5px}.project-index{font:600 10px var(--display);color:#a0a1ad}.portfolio-note{padding:12px 15px;background:var(--surface);color:var(--muted);font-size:11px;border-radius:7px;margin:35px 0 0}.portfolio-note span{color:var(--purple);margin-right:5px}
.about-section{background:var(--surface)}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:105px;align-items:center}.about-visual{height:420px;position:relative;display:grid;place-items:center}.about-frame{width:300px;height:360px;border-radius:155px 155px 14px 14px;background:linear-gradient(150deg,#eeeaff,#e7f3f1);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.about-frame:before,.about-frame:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(109,74,255,.15)}.about-frame:before{width:340px;height:340px;left:-180px;top:25px}.about-frame:after{width:240px;height:240px;right:-130px;bottom:-60px}.about-monogram{font:800 132px/.9 var(--display);letter-spacing:-18px;color:var(--purple);opacity:.92;position:relative;z-index:1}.about-monogram span{color:#3478f6}.about-caption{position:absolute;bottom:22px;left:24px;right:24px;padding:16px;border-radius:8px;background:rgba(255,255,255,.82);backdrop-filter:blur(8px);display:flex;justify-content:space-between;align-items:end;color:#292536}.about-caption span{font-size:7px;letter-spacing:1px;color:#777487}.about-caption b{font:700 12px/1.4 var(--display);text-align:right}.about-stamp{position:absolute;right:-2px;top:35px;width:92px;height:92px;border:1px solid var(--purple);border-radius:50%;display:grid;place-content:center;text-align:center;font:700 8px/1.7 var(--display);letter-spacing:1px;color:var(--purple);transform:rotate(10deg);background:var(--surface)}.about-copy h2{margin:0 0 23px}.about-copy>p:not(.eyebrow){color:var(--muted);line-height:1.85;font-size:14px}.text-link{display:inline-flex;gap:24px;align-items:center;margin-top:14px;color:var(--purple);font-size:13px;font-weight:700}.text-link span{font-size:17px}
.process-section{background:var(--soft)}.process-section .section-heading{margin-bottom:55px}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);position:relative}.process-grid:before{content:'';height:1px;background:rgba(109,74,255,.25);position:absolute;left:18px;right:18px;top:11px}.process-step{position:relative;padding:0 17px 0 0}.process-step>span{position:absolute;top:-29px;font:700 9px var(--display);color:var(--purple)}.step-dot{width:23px;height:23px;border-radius:50%;border:1px solid var(--purple);background:var(--soft);position:relative;margin-bottom:24px}.step-dot:after{content:'';position:absolute;inset:6px;border-radius:50%;background:var(--purple)}.process-step h3{font:700 14px var(--display);margin:0 0 7px}.process-step p{font-size:11px;line-height:1.7;color:var(--muted);margin:0;max-width:175px}
.contact-section{background:#27233d;color:#fff;position:relative;overflow:hidden}.contact-section:after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;border:1px solid rgba(162,147,255,.13);right:-120px;top:-250px;box-shadow:0 0 0 45px rgba(162,147,255,.025),0 0 0 90px rgba(162,147,255,.02)}.contact-grid{display:grid;grid-template-columns:1fr .88fr;gap:100px;position:relative;z-index:1}.contact-copy .eyebrow{color:#b8aaff}.contact-copy h2{font-size:clamp(36px,4vw,50px);color:#fff}.contact-copy h2 em{color:#b1a0ff}.contact-copy>p:not(.eyebrow){color:#cbc8d7;max-width:410px;line-height:1.8;margin:19px 0 30px}.social-links{display:flex;gap:10px;flex-wrap:wrap}.social-links a{display:flex;align-items:center;gap:8px;color:#f7f6fc;border:1px solid rgba(255,255,255,.18);border-radius:7px;padding:9px 11px;font-size:10px;transition:background .2s}.social-links a:hover{background:rgba(255,255,255,.1)}.social-links svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.social-links b{font-size:12px;color:#b7a8ff}.contact-form{background:var(--surface);color:var(--text);padding:29px;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.18)}.form-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:20px;color:var(--muted);font-size:8px;letter-spacing:1.1px;font-weight:700}.form-step{color:var(--purple)}.contact-form label{display:block;font-size:11px;font-weight:700;margin:13px 0 6px}.contact-form label span{color:#e55371}.contact-form label small{color:var(--muted);font-weight:400}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--text);padding:11px 12px;font-size:12px;transition:border .2s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a3a4b0}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--purple);outline:none;box-shadow:0 0 0 3px rgba(109,74,255,.12)}.contact-form textarea{resize:vertical;min-height:82px}.form-error{font-size:11px;color:#d43d5a;min-height:0;margin:0}.form-error:not(:empty){margin:10px 0}.submit-button{width:100%;margin-top:9px}.form-help{text-align:center;font-size:9px;color:var(--muted);margin:11px 0 0}
.site-footer{background:var(--surface)}.footer-main{padding:43px 0 35px;display:grid;grid-template-columns:1.2fr 1.2fr .8fr 1fr;gap:35px;align-items:start}.footer-main>p{font-size:12px;color:var(--muted);margin:8px 0}.footer-main nav,.footer-social{display:grid;gap:8px;font-size:11px;color:var(--muted)}.footer-main nav a:hover,.footer-social a:hover{color:var(--purple)}.footer-bottom{border-top:1px solid var(--line);padding:15px 0 19px;display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.footer-bottom a{color:var(--purple)}.whatsapp-float{position:fixed;right:23px;bottom:22px;z-index:40;width:54px;height:54px;border-radius:50%;background:#16a875;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(22,168,117,.35);animation:float-in .55s .5s both;transition:transform .2s,box-shadow .2s}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(22,168,117,.42)}.whatsapp-float svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}@keyframes float-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(15px);transition:opacity .65s,transform .65s}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.main-nav{gap:17px}.main-nav>a{font-size:12px}.hero-grid{grid-template-columns:1fr .9fr;gap:5px}.hero h1{font-size:53px}.hero-art{transform:scale(.88);transform-origin:center right}.about-grid{gap:50px}.contact-grid{gap:50px}.service-banner{flex-wrap:wrap}.service-banner>p{flex:1}.footer-main{gap:20px}}
@media(max-width:700px){.wrap{width:min(100% - 38px,540px)}.section{padding:80px 0}.site-header{height:68px}.brand{font-size:19px}.brand-mark{width:32px;height:32px}.menu-toggle{display:flex;flex-direction:column;gap:5px;width:40px;height:40px;justify-content:center;align-items:center;border:1px solid var(--line);border-radius:8px}.menu-toggle span{width:17px;height:1.5px;background:var(--text)}.main-nav{display:none;position:absolute;top:67px;left:0;right:0;padding:14px 20px 20px;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;gap:0}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a:not(.nav-cta){padding:12px 5px;border-bottom:1px solid var(--line)}.nav-cta{margin:13px 0 0;text-align:center}.theme-toggle{position:absolute;right:69px;top:-53px;margin:0}.hero{padding:55px 0 14px;min-height:0}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:3px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(42px,12vw,57px);letter-spacing:-2.7px;max-width:540px}.eyebrow{font-size:9px;letter-spacing:1.2px}.hero-text{font-size:14px;margin:17px 0}.hero-actions{gap:5px;margin-top:21px}.button{min-height:47px;padding:0 14px;font-size:11px;gap:10px}.hero-note{margin-top:23px}.hero-art{height:345px;transform:scale(.86);transform-origin:top center;margin:6px -30px -28px}.browser-card{width:390px;max-width:90vw;height:260px}.phone-card{right:calc(50% - 205px);bottom:25px}.tag-a{top:12px;right:calc(50% - 190px)}.tag-b{left:calc(50% - 195px);bottom:47px}.orbit-one{width:410px;height:290px}.orbit-two{width:350px;height:235px}.hero-bottom{font-size:8px}.section-heading h2,.about-copy h2,.contact-copy h2{font-size:42px;letter-spacing:-2px}.section-heading{margin-bottom:34px}.service-grid{grid-template-columns:1fr 1fr;gap:11px}.service-card,.service-card:nth-child(4){grid-column:auto;min-height:285px;padding:20px 16px 15px}.service-card:last-child{grid-column:span 2;min-height:245px}.service-icon{margin-bottom:18px}.service-card h3{font-size:15px}.service-card p{font-size:11px;min-height:90px}.service-card>a{font-size:9px}.service-banner{padding:24px 19px;gap:14px}.service-banner h3{font-size:16px}.service-banner>p{flex-basis:100%;font-size:11px;padding-left:40px}.button-light{margin-left:40px}.portfolio-heading{display:block}.portfolio-heading>p{margin-top:16px}.portfolio-grid{column-gap:12px;row-gap:24px}.project-image,.project-large .project-image{height:clamp(130px,38vw,215px)}.project-type{font-size:7px;letter-spacing:.8px}.project-meta h3{font-size:14px}.project-index{font-size:8px}.about-grid{grid-template-columns:1fr;gap:40px}.about-visual{height:340px}.about-frame{height:305px;width:260px}.about-monogram{font-size:110px}.about-stamp{right:calc(50% - 170px);top:15px}.about-copy>p:not(.eyebrow){font-size:13px}.process-grid{grid-template-columns:1fr;gap:23px;padding-left:33px}.process-grid:before{height:auto;width:1px;top:7px;bottom:7px;left:11px;right:auto}.process-step{padding:0 0 0 8px}.process-step>span{left:-32px;top:4px}.step-dot{position:absolute;left:-33px;top:0;width:20px;height:20px;background:var(--soft);margin:0}.step-dot:after{inset:5px}.process-step h3{font-size:14px}.process-step p{max-width:unset}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-copy h2{font-size:40px}.contact-form{padding:23px 19px}.footer-main{grid-template-columns:1fr 1fr;gap:25px 16px}.footer-main>p{font-size:11px}.footer-bottom{flex-wrap:wrap;gap:9px}.footer-bottom span:last-child{width:100%}.whatsapp-float{width:50px;height:50px;right:15px;bottom:15px}}
@media(max-width:390px){.hero-actions .button{font-size:10px;padding:0 11px}.hero h1{font-size:41px}.hero-art{transform:scale(.74);margin-inline:-45px;margin-bottom:-70px}.service-card,.service-card:nth-child(4){padding-inline:13px}.portfolio-grid{grid-template-columns:1fr}.project-image,.project-large .project-image{height:215px}.project-type{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* MarcoDev design tokens: refinamento visual */
:root{--bg:#fff;--surface:#fff;--soft:#f7f7fa;--text:#202027;--muted:#666875;--line:rgba(32,32,39,.1);--purple:#5f2eea;--purple-deep:#6c63ff;--blue:#6c63ff;--green:#16c784;--green-hover:#10b875;--card:#fff;--raised:#f0f0f6;--shadow:0 8px 20px rgba(25,20,50,.07),0 2px 5px rgba(25,20,50,.04);--shadow-raised:0 18px 38px rgba(25,20,50,.11),0 3px 8px rgba(25,20,50,.06);--button-shadow:0 4px 0 rgba(10,105,67,.25),0 8px 18px rgba(22,199,132,.17);--button-shadow-hover:0 5px 0 rgba(10,105,67,.28),0 12px 25px rgba(22,199,132,.25);--purple-glow:rgba(95,46,234,.18);--green-glow:rgba(22,199,132,.18);--radius-card:13px;--radius-control:8px;--ease-ui:240ms ease;--header:rgba(255,255,255,.9)}
body[data-theme=dark]{--bg:#0f0f12;--surface:#121214;--soft:#19191f;--card:#19191f;--raised:#202027;--text:#f4f3f8;--muted:#b6b5c1;--line:rgba(239,237,250,.1);--purple:#8b7bff;--purple-deep:#6c63ff;--blue:#8b7bff;--green:#16c784;--green-hover:#10b875;--shadow:0 12px 28px rgba(0,0,0,.28),0 2px 6px rgba(0,0,0,.24);--shadow-raised:0 22px 42px rgba(0,0,0,.38),0 1px 0 rgba(255,255,255,.035) inset;--button-shadow:0 4px 0 rgba(5,79,49,.65),0 8px 20px rgba(22,199,132,.12);--button-shadow-hover:0 5px 0 rgba(5,79,49,.75),0 12px 25px rgba(22,199,132,.2);--purple-glow:rgba(108,99,255,.2);--green-glow:rgba(22,199,132,.16);--header:rgba(15,15,18,.9)}
.site-header{border-color:var(--line)}
.brand-mark{color:var(--purple)}
.brand-accent{color:var(--purple)}
.hero{isolation:isolate;background:linear-gradient(105deg,var(--bg) 0%,var(--bg) 53%,rgba(108,99,255,.06) 100%)}
.hero:before,.hero:after{content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(2px)}
.hero:before{width:510px;height:510px;right:3%;top:35px;background:radial-gradient(circle,rgba(95,46,234,.19) 0%,rgba(108,99,255,.10) 35%,rgba(108,99,255,0) 72%)}
.hero:after{width:300px;height:300px;left:34%;bottom:-195px;background:radial-gradient(circle,rgba(108,99,255,.13),transparent 72%)}
body[data-theme=dark] .hero{background:linear-gradient(105deg,#0f0f12 0%,#0f0f12 47%,rgba(95,46,234,.10) 100%)}
body[data-theme=dark] .hero:before{background:radial-gradient(circle,rgba(108,99,255,.18) 0%,rgba(95,46,234,.09) 38%,transparent 72%)}
.hero-art{filter:drop-shadow(0 16px 28px rgba(67,46,143,.09))}
.browser-card{box-shadow:0 30px 65px rgba(37,24,91,.24),0 2px 0 rgba(255,255,255,.5) inset}
body[data-theme=dark] .browser-card{box-shadow:0 34px 72px rgba(0,0,0,.45),0 0 0 1px rgba(139,123,255,.17)}
.phone-card{box-shadow:0 22px 50px rgba(33,25,71,.28),0 0 0 1px rgba(255,255,255,.12) inset}
.service-card{box-shadow:var(--shadow);transition:transform var(--ease-ui),box-shadow var(--ease-ui),filter var(--ease-ui);border:1px solid rgba(255,255,255,.58)}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-raised);filter:brightness(1.015)}
.lavender{background:#f5f2ff}.blue{background:#f1f5ff}.mint{background:#eef9f4}.peach{background:#fff5ef}.gray{background:#f7f7fa}
body[data-theme=dark] .lavender,body[data-theme=dark] .blue,body[data-theme=dark] .mint,body[data-theme=dark] .peach,body[data-theme=dark] .gray{background:#19191f;border-color:rgba(255,255,255,.035)}
body[data-theme=dark] .service-card:hover{box-shadow:var(--shadow-raised),0 0 24px rgba(108,99,255,.08)}
.service-icon{background:rgba(255,255,255,.8);box-shadow:0 2px 6px rgba(29,24,56,.05)}
body[data-theme=dark] .service-icon{background:#202027;box-shadow:0 1px 0 rgba(255,255,255,.04) inset}
.project-card{border-radius:var(--radius-card);transition:transform var(--ease-ui),filter var(--ease-ui)}
.project-card:hover{transform:translateY(-3px)}
.project-image{box-shadow:var(--shadow);transition:box-shadow var(--ease-ui)}
.project-image:hover{box-shadow:var(--shadow-raised),0 0 0 1px rgba(95,46,234,.12)}
body[data-theme=dark] .project-image{box-shadow:var(--shadow)}
body[data-theme=dark] .project-image:hover{box-shadow:var(--shadow-raised),0 0 22px rgba(108,99,255,.1)}
.contact-form{background:var(--card);box-shadow:var(--shadow-raised);border:1px solid rgba(255,255,255,.55)}
body[data-theme=dark] .contact-form{background:#19191f;border-color:rgba(255,255,255,.045)}
.about-frame{box-shadow:var(--shadow)}
body[data-theme=dark] .about-frame{background:linear-gradient(150deg,#24203a,#1b2928);box-shadow:var(--shadow-raised)}
.process-section{background:var(--soft)}
.service-banner{box-shadow:0 13px 32px rgba(31,24,66,.13),0 1px 0 rgba(255,255,255,.07) inset}
.button,.nav-cta{color:#0f0f12;background:var(--green);box-shadow:var(--button-shadow);border-radius:var(--radius-control);transition:transform var(--ease-ui),background var(--ease-ui),box-shadow var(--ease-ui)}
.button:hover,.nav-cta:hover{color:#0f0f12;background:var(--green-hover);box-shadow:var(--button-shadow-hover);transform:translateY(-2px)}
.button:active,.nav-cta:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(10,105,67,.3),0 3px 8px rgba(22,199,132,.12)}
.button-primary{color:#0f0f12;background:var(--green)}
.button-primary:hover{color:#0f0f12;background:var(--green-hover)}
.button-quiet{color:#0f0f12;background:var(--green)}
.button-quiet:hover{color:#0f0f12;background:var(--green-hover)}
.button-light{color:#0f0f12;background:var(--green)}
.button-light:hover{color:#0f0f12;background:var(--green-hover);box-shadow:var(--button-shadow-hover)}
.nav-cta{padding:11px 15px}
.service-card>a{color:#0f0f12;background:var(--green);border:0;border-radius:7px;padding:10px 11px;margin-top:10px;box-shadow:0 3px 0 rgba(10,105,67,.18),0 5px 11px rgba(22,199,132,.1);transition:transform var(--ease-ui),background var(--ease-ui),box-shadow var(--ease-ui)}
.service-card>a:hover{color:#0f0f12;background:var(--green-hover);transform:translateY(-1px);box-shadow:0 4px 0 rgba(10,105,67,.22),0 8px 15px rgba(22,199,132,.16)}
.theme-toggle{background:var(--green);color:#0f0f12;border:0;box-shadow:0 3px 0 rgba(10,105,67,.22),0 5px 12px rgba(22,199,132,.14);transition:transform var(--ease-ui),background var(--ease-ui),box-shadow var(--ease-ui)}
.theme-toggle:hover{background:var(--green-hover);transform:translateY(-1px);box-shadow:0 4px 0 rgba(10,105,67,.25),0 8px 16px rgba(22,199,132,.2)}
.theme-toggle:active{transform:translateY(1px);box-shadow:none}
.menu-toggle{background:var(--green);border-color:transparent;box-shadow:0 3px 0 rgba(10,105,67,.2)}
.menu-toggle span{background:#0f0f12}
.contact-section{background:radial-gradient(ellipse at 22% 30%,rgba(108,99,255,.22),transparent 45%),#17151f}
.contact-section:after{border-color:rgba(139,123,255,.14)}
.contact-form input,.contact-form select,.contact-form textarea{background:var(--bg);color:var(--text)}
.whatsapp-float{background:var(--green);color:#0f0f12;box-shadow:var(--button-shadow);transition:transform var(--ease-ui),background var(--ease-ui),box-shadow var(--ease-ui)}
.whatsapp-float:hover{background:var(--green-hover);transform:translateY(-3px);box-shadow:var(--button-shadow-hover)}
.whatsapp-float:active{transform:translateY(1px);box-shadow:none}
.main-nav>a.nav-cta:hover{color:#0f0f12}
.site-footer{background:var(--surface)}
@media(max-width:700px){.hero:before{width:390px;height:390px;right:-150px;top:210px}.hero:after{left:-130px}}

/* Roxo elétrico: gradiente multicamada e halo de luz ao redor das ações. */
:root{--electric-start:#5f2eea;--electric-mid:#6c63ff;--electric-end:#7c3aed;--electric-edge:#a78bfa;--electric-gradient:linear-gradient(112deg,#5f2eea 0%,#6c63ff 48%,#7c3aed 100%);--electric-halo:0 0 0 1px rgba(167,139,250,.5),0 0 12px 2px rgba(108,99,255,.38),0 0 27px 5px rgba(95,46,234,.2);--electric-halo-hover:0 0 0 1px rgba(196,181,253,.8),0 0 16px 3px rgba(108,99,255,.56),0 0 34px 8px rgba(95,46,234,.3)}
.hero{background:radial-gradient(ellipse at 77% 42%,rgba(95,46,234,.19),transparent 34%),radial-gradient(ellipse at 94% 12%,rgba(124,58,237,.13),transparent 27%),radial-gradient(ellipse at 58% 92%,rgba(108,99,255,.12),transparent 36%),linear-gradient(108deg,var(--bg) 8%,#f7f4ff 66%,var(--bg) 100%)}
body[data-theme=dark] .hero{background:radial-gradient(ellipse at 77% 42%,rgba(95,46,234,.24),transparent 34%),radial-gradient(ellipse at 94% 12%,rgba(124,58,237,.16),transparent 27%),radial-gradient(ellipse at 58% 92%,rgba(108,99,255,.15),transparent 36%),linear-gradient(108deg,#0f0f12 8%,#171323 66%,#0f0f12 100%)}
.hero:before{width:560px;height:560px;right:1%;top:15px;background:radial-gradient(circle at 42% 42%,rgba(95,46,234,.22),rgba(108,99,255,.15) 30%,rgba(124,58,237,.09) 50%,transparent 73%)}
.hero:after{width:390px;height:390px;left:32%;bottom:-245px;background:radial-gradient(circle,rgba(124,58,237,.18),rgba(108,99,255,.09) 38%,transparent 72%)}
body[data-theme=dark] .hero:before{background:radial-gradient(circle at 42% 42%,rgba(95,46,234,.27),rgba(108,99,255,.18) 30%,rgba(124,58,237,.1) 50%,transparent 73%)}
body[data-theme=dark] .hero:after{background:radial-gradient(circle,rgba(124,58,237,.2),rgba(108,99,255,.11) 38%,transparent 72%)}
.button,.nav-cta,.service-card>a,.theme-toggle,.menu-toggle,.whatsapp-float{background:var(--electric-gradient);color:#fff;border:1px solid rgba(196,181,253,.44);box-shadow:var(--electric-halo);transition:transform var(--ease-ui),filter var(--ease-ui),box-shadow var(--ease-ui)}
.button:hover,.nav-cta:hover,.service-card>a:hover,.theme-toggle:hover,.whatsapp-float:hover{background:var(--electric-gradient);color:#fff;filter:brightness(1.12);box-shadow:var(--electric-halo-hover);transform:translateY(-2px)}
.button:active,.nav-cta:active,.service-card>a:active,.theme-toggle:active,.menu-toggle:active,.whatsapp-float:active{filter:brightness(.96);transform:translateY(1px);box-shadow:0 0 0 1px rgba(167,139,250,.38),0 0 8px 1px rgba(108,99,255,.22)}
.button-primary,.button-primary:hover,.button-quiet,.button-quiet:hover,.button-light,.button-light:hover,.main-nav>a.nav-cta:hover{background:var(--electric-gradient);color:#fff;box-shadow:var(--electric-halo)}
.button:focus-visible,.nav-cta:focus-visible,.service-card>a:focus-visible,.theme-toggle:focus-visible,.menu-toggle:focus-visible,.whatsapp-float:focus-visible{outline:3px solid #b7a5ff;outline-offset:4px}
.service-card>a{border:1px solid rgba(196,181,253,.38);color:#fff}
.service-card>a:hover{color:#fff}
.theme-toggle{color:#fff;border:1px solid rgba(196,181,253,.5)}
.theme-toggle svg{stroke:currentColor}
.menu-toggle{border:1px solid rgba(196,181,253,.5)}
.menu-toggle span{background:#fff}
.whatsapp-float{color:#fff}
.whatsapp-float:hover{color:#fff}
