/* ARCODESTUDIOS — Full Responsive Theme (Mobile-First, Zero Inline Styles) */

:root{--c:#3DDC84;--cd:#2CB867;--d9:#0a0f1a;--d8:#0f1729;--d7:#151f36;--d6:#1c2a47;--d5:#253557;--a:#00d2ff;--a2:#7c3aed}

/* RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:var(--d9);color:#e2e8f0;overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;font-size:14px}
@media(min-width:480px){body{font-size:15px}}
@media(min-width:768px){body{font-size:16px}}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit;transition:all .3s}
ul,ol{list-style:none}
button{font-family:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--d9)}
::-webkit-scrollbar-thumb{background:var(--c);border-radius:3px}

/* TYPOGRAPHY */
h1,h2,h3,h4,h5,h6{font-weight:800;line-height:1.2;color:#fff;word-break:break-word}
h1{font-size:1.75rem}
h2{font-size:1.4rem}
h3{font-size:1.1rem}
p{color:#94a3b8;line-height:1.7}
@media(min-width:480px){h1{font-size:2.2rem}h2{font-size:1.7rem}h3{font-size:1.15rem}}
@media(min-width:768px){h1{font-size:2.8rem}h2{font-size:2.2rem}h3{font-size:1.3rem}}
@media(min-width:1024px){h1{font-size:3.5rem}h2{font-size:2.6rem}h3{font-size:1.4rem}}
@media(min-width:1280px){h1{font-size:4rem}}
strong{color:#fff}
.clr-android{color:var(--c)}
.clr-gray{color:#94a3b8}
.clr-gray2{color:#64748b}
.clr-green{color:#4ade80}
.clr-star{color:#facc15}
.fz-xs{font-size:.65rem}
@media(min-width:768px){.fz-xs{font-size:.7rem}}
.fz-sm{font-size:.75rem}
@media(min-width:768px){.fz-sm{font-size:.8rem}}
.fz-base{font-size:.8rem}
@media(min-width:768px){.fz-base{font-size:.875rem}}
.fz-md{font-size:.875rem}
@media(min-width:768px){.fz-md{font-size:.95rem}}
.fw-600{font-weight:600}
.fw-700{font-weight:700}
.fw-800{font-weight:800}
.mono{font-family:'JetBrains Mono',monospace}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-xs{gap:.3rem}
.gap-sm{gap:.5rem}
.gap-md{gap:.75rem}
.gap-lg{gap:1rem}
.gap-xl{gap:1.5rem}
@media(min-width:768px){.gap-md{gap:1rem}.gap-lg{gap:1.25rem}.gap-xl{gap:2rem}}
.mt-sm{margin-top:.5rem}
.mt-md{margin-top:.75rem}
.mt-lg{margin-top:1rem}
.mt-xl{margin-top:1.5rem}
.mt-2xl{margin-top:2rem}
.mt-3xl{margin-top:3rem}
@media(min-width:768px){.mt-xl{margin-top:2rem}.mt-2xl{margin-top:3rem}.mt-3xl{margin-top:4rem}}
.mb-sm{margin-bottom:.5rem}
.mb-md{margin-bottom:.75rem}
.mb-lg{margin-bottom:1rem}
.mb-xl{margin-bottom:1.5rem}
@media(min-width:768px){.mb-xl{margin-bottom:2rem}}
.ml-auto{margin-left:auto}
.relative{position:relative}
.text-center{text-align:center}
.block{display:block}
.inline-flex{display:inline-flex}
.w-full{width:100%}
.shrink-0{flex-shrink:0}
.overflow-hidden{overflow:hidden}
.rounded-full{border-radius:9999px}

/* CONTAINER */
.container{width:100%;max-width:1280px;margin:0 auto;padding:0 16px}
@media(min-width:480px){.container{padding:0 20px}}
@media(min-width:768px){.container{padding:0 28px}}
@media(min-width:1024px){.container{padding:0 32px}}

/* SECTION */
.section{padding:3rem 0;position:relative}
@media(min-width:768px){.section{padding:5rem 0}}
@media(min-width:1024px){.section{padding:6.5rem 0}}
.section-alt{background:rgba(15,23,41,.5)}

/* GRIDS */
.grid-2,.grid-3,.grid-4,.hero-grid,.about-grid,.contact-grid,.skills-2col,.highlights-grid{display:grid;gap:1.25rem}
.grid-2,.grid-3,.hero-grid,.about-grid,.contact-grid,.skills-2col{grid-template-columns:1fr}
.grid-4{grid-template-columns:1fr 1fr}
.highlights-grid{grid-template-columns:1fr}
@media(min-width:480px){.highlights-grid{grid-template-columns:1fr 1fr}.grid-4{gap:1rem}}
@media(min-width:640px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr);gap:2rem}.grid-3{gap:1.5rem}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.5rem}.skills-2col{grid-template-columns:repeat(2,1fr);gap:1.5rem}}
@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr);gap:2rem}.hero-grid{grid-template-columns:1fr 1fr;gap:3rem}.about-grid{grid-template-columns:1fr 1fr;gap:3.5rem}.contact-grid{grid-template-columns:2fr 3fr;gap:2.5rem}}
.form-row{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:480px){.form-row{grid-template-columns:1fr 1fr;gap:1rem}}

/* GRADIENT TEXT */
.gradient-text{background:linear-gradient(135deg,var(--c),var(--a));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.shimmer-text{background:linear-gradient(90deg,var(--c) 0%,var(--a) 25%,var(--a2) 50%,var(--a) 75%,var(--c) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite}

/* SECTION HEADING */
.section-heading{text-align:center;margin-bottom:2rem}
@media(min-width:768px){.section-heading{margin-bottom:3rem}}
.section-heading .label{color:var(--c);font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
@media(min-width:768px){.section-heading .label{font-size:.75rem}}
.section-heading h2{margin-top:.4rem;margin-bottom:.6rem}
.section-line{width:45px;height:3px;background:linear-gradient(90deg,var(--c),var(--a));border-radius:2px;margin:0 auto}
@media(min-width:768px){.section-line{width:60px;height:4px}}
.section-heading p{margin-top:.75rem;max-width:36rem;margin-left:auto;margin-right:auto}

/* GLASS */
.glass{background:rgba(15,23,42,.75);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(61,220,132,.1)}
.glass-card{background:rgba(21,31,54,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(61,220,132,.08);border-radius:1rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}
@media(min-width:768px){.glass-card{border-radius:1.5rem}}
.glass-card:hover{border-color:rgba(61,220,132,.3);transform:translateY(-6px);box-shadow:0 16px 50px rgba(61,220,132,.08)}
@media(hover:none){.glass-card:hover{transform:none;box-shadow:none}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.6rem 1rem;font-weight:700;font-size:.75rem;border-radius:.6rem;border:none;cursor:pointer;transition:all .3s;white-space:nowrap}
@media(min-width:480px){.btn{padding:.7rem 1.25rem;font-size:.8rem;gap:.4rem;border-radius:.75rem}}
@media(min-width:768px){.btn{padding:.875rem 1.75rem;font-size:.85rem;gap:.5rem;border-radius:1rem}}
.btn-primary{background:linear-gradient(135deg,var(--c),var(--a));color:var(--d9)}
.btn-primary:hover{transform:scale(1.04);box-shadow:0 10px 30px rgba(61,220,132,.2)}
.btn-outline{background:transparent;border:2px solid rgba(61,220,132,.3);color:var(--c)}
.btn-outline:hover{background:rgba(61,220,132,.1);border-color:rgba(61,220,132,.6)}
.btn-whatsapp{background:rgba(34,197,94,.1);border:2px solid rgba(34,197,94,.3);color:#4ade80}
.btn-whatsapp:hover{background:rgba(34,197,94,.2);border-color:rgba(34,197,94,.5)}
.btn-group{display:flex;flex-direction:column;gap:.6rem}
@media(min-width:480px){.btn-group{flex-direction:row;gap:.75rem}}

/* NAV */
.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:.6rem 0;transition:all .4s}
@media(min-width:768px){.site-nav{padding:.9rem 0}}
.site-nav.scrolled{padding:.4rem 0;background:rgba(15,23,42,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(61,220,132,.08);box-shadow:0 2px 20px rgba(0,0,0,.3)}
.nav-inner{display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:.35rem;flex-shrink:0}
.nav-logo-icon{width:32px;height:32px;border-radius:.5rem;background:linear-gradient(135deg,var(--c),var(--a));display:flex;align-items:center;justify-content:center;transition:transform .3s}
@media(min-width:768px){.nav-logo-icon{width:38px;height:38px;border-radius:.65rem}}
.nav-logo:hover .nav-logo-icon{transform:scale(1.1)}
.nav-logo-text{font-size:.85rem;font-weight:700;color:#fff}
@media(min-width:768px){.nav-logo-text{font-size:1rem}}
.nav-links{display:none;align-items:center;gap:.1rem}
@media(min-width:1024px){.nav-links{display:flex}}
.nav-links a{padding:.35rem .6rem;border-radius:.4rem;font-size:.78rem;font-weight:500;color:#94a3b8}
.nav-links a:hover,.nav-links a.active{color:var(--c);background:rgba(61,220,132,.08)}
.nav-cta{display:none}
@media(min-width:1024px){.nav-cta{display:inline-flex}}
.mobile-toggle{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:none;border:none;color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent}
@media(min-width:1024px){.mobile-toggle{display:none}}
.mobile-menu{display:none;margin:.4rem .6rem 0;border-radius:.75rem;padding:.6rem;background:rgba(15,23,42,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(61,220,132,.08);animation:slideDown .3s ease-out}
.mobile-menu.open{display:block}
.mobile-menu a{display:block;padding:.55rem .7rem;border-radius:.4rem;font-size:.82rem;font-weight:500;color:#94a3b8}
.mobile-menu a:hover{color:var(--c);background:rgba(61,220,132,.08)}

/* HERO */
.hero{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.25}
.hero-bg .overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,15,26,.85),rgba(10,15,26,.6),var(--d9))}
.hero-orb{position:absolute;border-radius:50%;filter:blur(50px);animation:float 6s ease-in-out infinite;pointer-events:none;display:none}
@media(min-width:768px){.hero-orb{display:block}}
.hero-content{position:relative;z-index:10;padding:5.5rem 0 2.5rem;width:100%}
@media(min-width:768px){.hero-content{padding:7rem 0 3rem}}
.hero .badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .65rem;border-radius:9999px;font-size:.7rem;color:var(--c);font-weight:500}
@media(min-width:768px){.hero .badge{font-size:.8rem;padding:.4rem .9rem}}
.hero .badge .dot{width:6px;height:6px;background:var(--c);border-radius:50%;animation:pulse-glow 2s infinite}
.hero .subtitle{max-width:30rem}
.hero .cta-group{display:flex;flex-wrap:wrap;gap:.6rem}
@media(min-width:768px){.hero .cta-group{gap:.9rem}}
.hero .location-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:.5rem;color:#94a3b8}
@media(min-width:768px){.hero .location-tag{padding:.4rem .9rem;border-radius:.6rem}}
.hero-profile{display:none;justify-content:center}
@media(min-width:1024px){.hero-profile{display:flex}}
.profile-ring{position:relative;width:240px;height:240px}
@media(min-width:1280px){.profile-ring{width:320px;height:320px}}
.profile-glow{position:absolute;inset:-10px;border-radius:50%;filter:blur(18px);background:linear-gradient(135deg,rgba(61,220,132,.3),rgba(0,210,255,.2),rgba(124,58,237,.3));animation:pulse-glow 3s ease-in-out infinite}
.profile-img{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;border:3px solid rgba(61,220,132,.2)}
.profile-img img{width:100%;height:100%;object-fit:cover}
.float-badge{position:absolute;padding:.3rem .6rem;border-radius:.5rem;animation:float 6s ease-in-out infinite}
.float-badge .inner{display:flex;align-items:center;gap:.35rem}
.float-badge .icon{font-size:1.1rem}
.float-badge .meta .small{font-size:.55rem;color:#94a3b8}
.float-badge .meta .val{font-size:.7rem;font-weight:700;color:#fff}
@media(min-width:1280px){.float-badge{padding:.4rem .75rem;border-radius:.6rem}.float-badge .icon{font-size:1.35rem}.float-badge .meta .val{font-size:.8rem}}
.float-badge-1{top:-8px;right:-8px}
.float-badge-2{bottom:-4px;left:-8px;animation-delay:.4s}
.float-badge-3{top:42%;right:-16px;animation-delay:.8s}
@media(min-width:1280px){.float-badge-1{top:-14px;right:-14px}.float-badge-2{bottom:-6px;left:-14px}.float-badge-3{right:-26px}}
.scroll-indicator{position:absolute;bottom:.8rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.25rem;color:#64748b;font-size:.55rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;animation:bounce 2s infinite}
@media(min-width:768px){.scroll-indicator{bottom:1.5rem;font-size:.65rem}}

/* ABOUT */
.about-img-wrap{position:relative;border-radius:.75rem;overflow:hidden;border:1px solid var(--d6)}
@media(min-width:768px){.about-img-wrap{border-radius:1.25rem}}
.about-img-wrap img{width:100%;height:220px;object-fit:cover}
@media(min-width:480px){.about-img-wrap img{height:280px}}
@media(min-width:768px){.about-img-wrap img{height:360px}}
@media(min-width:1024px){.about-img-wrap img{height:440px}}
.about-badge{position:absolute;bottom:-12px;right:-4px;padding:.75rem;border-radius:.6rem}
@media(min-width:768px){.about-badge{bottom:-18px;right:-16px;padding:1.1rem;border-radius:.9rem}}
.about-badge .big{font-size:1.5rem;font-weight:800}
@media(min-width:768px){.about-badge .big{font-size:2rem}}
.about-badge-text{font-size:.65rem;color:#94a3b8;margin-top:.15rem}
@media(min-width:768px){.about-badge-text{font-size:.75rem}}
.about-code-badge{position:absolute;top:-6px;left:-4px;padding:.35rem .6rem;border-radius:.4rem;font-size:.6rem;color:var(--c)}
@media(min-width:768px){.about-code-badge{top:-10px;left:-10px;padding:.5rem .85rem;font-size:.75rem;border-radius:.6rem}}
.highlight-item{display:flex;align-items:center;gap:.35rem}

/* STAT */
.stat-card{text-align:center;padding:1rem .75rem}
@media(min-width:768px){.stat-card{padding:1.5rem}}
.stat-icon{width:40px;height:40px;margin:0 auto;border-radius:.6rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:linear-gradient(135deg,rgba(61,220,132,.2),rgba(0,210,255,.1))}
@media(min-width:768px){.stat-icon{width:52px;height:52px;border-radius:.9rem;font-size:1.4rem}}
.stat-value{font-size:1.3rem;font-weight:800;color:#fff;margin-top:.5rem}
@media(min-width:768px){.stat-value{font-size:1.7rem;margin-top:.75rem}}
.stat-label{font-size:.65rem;color:#94a3b8;margin-top:.15rem}
@media(min-width:768px){.stat-label{font-size:.8rem}}

/* SKILLS */
.skills-banner{position:relative;border-radius:.75rem;overflow:hidden}
@media(min-width:768px){.skills-banner{border-radius:1.25rem}}
.skills-banner img{width:100%;height:150px;object-fit:cover}
@media(min-width:480px){.skills-banner img{height:190px}}
@media(min-width:768px){.skills-banner img{height:240px}}
@media(min-width:1024px){.skills-banner img{height:270px}}
.skills-banner .overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(10,15,26,.92),rgba(10,15,26,.7),rgba(10,15,26,.5))}
.skills-banner .inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.75rem}
.skills-card-inner{padding:1rem}
@media(min-width:768px){.skills-card-inner{padding:1.5rem}}
.skill-cat-header{display:flex;align-items:center;gap:.4rem}
.skill-cat-icon{font-size:1.1rem}
@media(min-width:768px){.skill-cat-icon{font-size:1.3rem}}
.skill-cat-count{margin-left:auto;font-size:.6rem;color:#64748b;font-weight:400}
@media(min-width:768px){.skill-cat-count{font-size:.7rem}}
.skill-row{margin-bottom:.8rem}
@media(min-width:768px){.skill-row{margin-bottom:1.1rem}}
.skill-header{display:flex;justify-content:space-between;margin-bottom:.3rem}
.skill-name{font-size:.75rem;font-weight:500;color:#cbd5e1}
@media(min-width:768px){.skill-name{font-size:.85rem}}
.skill-pct{font-size:.65rem;font-weight:700;color:var(--c)}
@media(min-width:768px){.skill-pct{font-size:.7rem}}
.skill-bar{height:7px;background:var(--d6);border-radius:999px;overflow:hidden}
@media(min-width:768px){.skill-bar{height:9px}}
.skill-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--c),var(--a));width:0;transition:width 1.4s ease-out}
.reveal-in-view .skill-fill{width:var(--level)}

/* PROJECT */
.project-card{overflow:hidden;display:flex;flex-direction:column}
.project-img{position:relative;height:160px;overflow:hidden}
@media(min-width:480px){.project-img{height:180px}}
@media(min-width:768px){.project-img{height:200px}}
.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.project-card:hover .project-img img{transform:scale(1.08)}
.project-img .overlay-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,15,26,.9),rgba(10,15,26,.3),transparent)}
.project-img .cat-badge{position:absolute;top:.6rem;left:.6rem;padding:.15rem .45rem;border-radius:.3rem;background:rgba(61,220,132,.2);color:var(--c);font-size:.6rem;font-weight:600;backdrop-filter:blur(8px)}
@media(min-width:768px){.project-img .cat-badge{top:.85rem;left:.85rem;padding:.2rem .65rem;font-size:.7rem;border-radius:.4rem}}
.project-body{padding:1rem;flex:1;display:flex;flex-direction:column}
@media(min-width:768px){.project-body{padding:1.35rem}}
.project-body h3{transition:color .3s}
.project-card:hover .project-body h3{color:var(--c)}
.project-body>p{flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tech-tags{display:flex;flex-wrap:wrap;gap:.25rem}
@media(min-width:768px){.tech-tags{gap:.4rem}}
.tech-tag{padding:.12rem .35rem;border-radius:.25rem;background:rgba(28,42,71,.8);font-size:.6rem;font-weight:500;color:#cbd5e1}
@media(min-width:768px){.tech-tag{padding:.18rem .5rem;font-size:.7rem;border-radius:.35rem}}
.project-stats{display:flex;align-items:center;gap:.6rem;padding-top:.7rem;border-top:1px solid var(--d6)}
@media(min-width:768px){.project-stats{gap:.9rem;padding-top:.9rem}}
.project-view-link{margin-left:auto;color:var(--c);font-weight:600}

/* SERVICE */
.service-card{padding:1.1rem;position:relative;overflow:hidden}
@media(min-width:768px){.service-card{padding:1.5rem}}
.service-card .hover-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(61,220,132,.04),rgba(0,210,255,.04));opacity:0;transition:opacity .5s}
.service-card:hover .hover-bg{opacity:1}
.service-card-inner{position:relative}
.service-icon{width:42px;height:42px;border-radius:.6rem;background:linear-gradient(135deg,rgba(61,220,132,.2),rgba(0,210,255,.1));display:flex;align-items:center;justify-content:center;font-size:1.3rem;transition:all .5s}
@media(min-width:768px){.service-icon{width:56px;height:56px;border-radius:.85rem;font-size:1.7rem}}
.service-card:hover .service-icon{transform:scale(1.08) rotate(3deg)}
.service-card h3{transition:color .3s}
.service-card:hover h3{color:var(--c)}
.service-features li{display:flex;align-items:center;gap:.35rem;color:#cbd5e1}
.service-features li::before{content:'';width:5px;height:5px;background:var(--c);border-radius:50%;flex-shrink:0}
.service-link{font-weight:600;color:var(--c);display:inline-flex;align-items:center;gap:.35rem;transition:gap .3s}
.service-card:hover .service-link{gap:.6rem}

/* STEP */
.step-card{padding:1.1rem;position:relative;overflow:hidden}
@media(min-width:768px){.step-card{padding:1.5rem}}
.step-number{position:absolute;top:-8px;right:-8px;font-size:3rem;font-weight:800;color:rgba(61,220,132,.04);user-select:none;transition:color .5s}
@media(min-width:768px){.step-number{font-size:4.5rem;top:-14px;right:-14px}}
.step-card:hover .step-number{color:rgba(61,220,132,.1)}
.step-inner{position:relative}
.step-header{display:flex;align-items:center;gap:.6rem}
@media(min-width:768px){.step-header{gap:.85rem}}
.step-icon{width:40px;height:40px;border-radius:.6rem;background:linear-gradient(135deg,rgba(61,220,132,.2),rgba(0,210,255,.1));display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all .5s}
@media(min-width:768px){.step-icon{width:50px;height:50px;border-radius:.8rem;font-size:1.35rem}}
.step-card:hover .step-icon{transform:scale(1.08) rotate(5deg)}
.step-label{font-size:.55rem;font-weight:700;color:rgba(61,220,132,.6);text-transform:uppercase;letter-spacing:.12em}
@media(min-width:768px){.step-label{font-size:.65rem}}
.step-card h3{transition:color .3s}
.step-card:hover h3{color:var(--c)}

/* TESTIMONIAL */
.testimonial-wrapper{max-width:50rem;margin:0 auto}
.testimonial-card{padding:1.1rem;position:relative;overflow:hidden}
@media(min-width:480px){.testimonial-card{padding:1.4rem 1.8rem}}
@media(min-width:768px){.testimonial-card{padding:1.8rem 2.5rem}}
.testimonial-card .quote-icon{position:absolute;top:.8rem;right:.8rem;font-size:2.5rem;color:rgba(61,220,132,.07);line-height:1}
@media(min-width:768px){.testimonial-card .quote-icon{font-size:4.5rem;top:1.2rem;right:1.5rem}}
.testimonial-stars{display:flex;gap:.1rem;color:#facc15;font-size:.9rem}
@media(min-width:768px){.testimonial-stars{gap:.2rem;font-size:1.15rem}}
.testimonial-text{color:#cbd5e1;line-height:1.7;font-style:italic}
@media(min-width:768px){.testimonial-text{line-height:1.8}}
.testimonial-author{display:flex;flex-direction:column;gap:.6rem}
@media(min-width:480px){.testimonial-author{flex-direction:row;align-items:center;justify-content:space-between}}
.testimonial-author-info{display:flex;align-items:center;gap:.6rem}
.testimonial-avatar{width:40px;height:40px;border-radius:.6rem;background:linear-gradient(135deg,rgba(61,220,132,.2),rgba(0,210,255,.1));display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
@media(min-width:768px){.testimonial-avatar{width:50px;height:50px;border-radius:.85rem;font-size:1.6rem}}
.testimonial-name{font-weight:700;color:#fff;font-size:.85rem}
@media(min-width:768px){.testimonial-name{font-size:1rem}}
.testimonial-role{font-size:.7rem;color:#94a3b8}
@media(min-width:768px){.testimonial-role{font-size:.8rem}}
.testimonial-project{padding:.3rem .6rem;border-radius:.4rem;background:rgba(61,220,132,.1);border:1px solid rgba(61,220,132,.2);color:var(--c);font-size:.7rem;font-weight:500;display:none}
@media(min-width:640px){.testimonial-project{display:inline-block}}
.testimonial-nav{display:flex;align-items:center;justify-content:center;gap:.6rem}
@media(min-width:768px){.testimonial-nav{gap:.85rem}}
.testimonial-btn{width:36px;height:36px;border-radius:.6rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:1rem;transition:all .3s;-webkit-tap-highlight-color:transparent}
@media(min-width:768px){.testimonial-btn{width:44px;height:44px;border-radius:.85rem;font-size:1.2rem}}
.testimonial-btn:hover{color:var(--c)}
.testimonial-dots{display:flex;gap:.3rem}
.testimonial-dot{height:7px;border-radius:999px;border:none;cursor:pointer;transition:all .4s;-webkit-tap-highlight-color:transparent}
@media(min-width:768px){.testimonial-dot{height:9px}}
.testimonial-dot.active{width:28px;background:linear-gradient(90deg,var(--c),var(--a))}
@media(min-width:768px){.testimonial-dot.active{width:36px}}
.testimonial-dot:not(.active){width:7px;background:var(--d5)}
@media(min-width:768px){.testimonial-dot:not(.active){width:9px}}
.progress-bar{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--d7)}
.progress-fill{height:100%;background:linear-gradient(90deg,var(--c),var(--a));transition:width .5s}

/* MARQUEE */
.marquee-section-label{font-size:.6rem;color:#64748b;letter-spacing:.18em;text-transform:uppercase;text-align:center}
@media(min-width:768px){.marquee-section-label{font-size:.7rem;letter-spacing:.2em}}
.marquee-wrapper{position:relative;overflow:hidden;padding:.8rem 0}
@media(min-width:768px){.marquee-wrapper{padding:1.2rem 0}}
.marquee-fade-l,.marquee-fade-r{position:absolute;top:0;bottom:0;width:40px;z-index:10;pointer-events:none}
@media(min-width:768px){.marquee-fade-l,.marquee-fade-r{width:80px}}
.marquee-fade-l{left:0;background:linear-gradient(to right,var(--d9),transparent)}
.marquee-fade-r{right:0;background:linear-gradient(to left,var(--d9),transparent)}
.marquee-track,.marquee-track-reverse{display:flex;overflow:hidden;user-select:none}
.marquee-track-reverse{margin-top:.8rem}
@media(min-width:768px){.marquee-track-reverse{margin-top:1.5rem}}
.marquee-content{display:flex;animation:marquee-left 35s linear infinite;will-change:transform}
.marquee-content:hover{animation-play-state:paused}
.marquee-content-reverse{display:flex;animation:marquee-right 40s linear infinite;will-change:transform}
.marquee-content-reverse:hover{animation-play-state:paused}
.logo-card{flex-shrink:0;margin:0 .4rem;padding:.6rem 1rem;border-radius:.6rem;min-width:100px;text-align:center}
@media(min-width:768px){.logo-card{margin:0 .75rem;padding:1rem 1.75rem;border-radius:.85rem;min-width:160px}}
.logo-card .brand{font-size:.75rem;font-weight:700;color:#64748b;letter-spacing:.04em;transition:color .5s}
@media(min-width:768px){.logo-card .brand{font-size:1rem}}
.logo-card:hover .brand{color:var(--c)}

/* CONTACT */
.contact-info-card{padding:1.1rem;height:100%}
@media(min-width:768px){.contact-info-card{padding:1.5rem}}
.contact-header{display:flex;align-items:center;gap:.5rem}
.contact-header-icon{width:36px;height:36px;border-radius:.6rem;background:linear-gradient(135deg,var(--c),var(--a));display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
@media(min-width:768px){.contact-header-icon{width:44px;height:44px;border-radius:.75rem;font-size:1.2rem}}
.contact-item{display:flex;align-items:flex-start;gap:.6rem}
.contact-icon{width:34px;height:34px;border-radius:.5rem;background:rgba(61,220,132,.1);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all .3s}
@media(min-width:768px){.contact-icon{width:40px;height:40px;border-radius:.65rem;font-size:1.1rem}}
.contact-item:hover .contact-icon{background:rgba(61,220,132,.2);transform:scale(1.08)}
.contact-label{font-size:.55rem;color:#64748b;text-transform:uppercase;letter-spacing:.08em}
@media(min-width:768px){.contact-label{font-size:.65rem}}
.contact-value{color:#cbd5e1;transition:color .3s;word-break:break-all}
.contact-item:hover .contact-value{color:var(--c)}
.whatsapp-card{display:flex;align-items:flex-start;gap:.6rem;padding:.65rem;border-radius:.6rem;background:rgba(34,197,94,.05);border:1px solid rgba(34,197,94,.12);transition:all .3s}
@media(min-width:768px){.whatsapp-card{gap:.85rem;padding:.85rem;border-radius:.8rem}}
.whatsapp-card:hover{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.25)}
.whatsapp-icon{background:rgba(34,197,94,.12)!important}
.contact-form-card{padding:1.1rem}
@media(min-width:768px){.contact-form-card{padding:1.5rem}}
.form-group{margin-bottom:.85rem}
@media(min-width:768px){.form-group{margin-bottom:1.2rem}}
.form-group label{display:block;font-size:.75rem;font-weight:500;color:#94a3b8;margin-bottom:.25rem}
@media(min-width:768px){.form-group label{font-size:.8rem;margin-bottom:.4rem}}
.form-control{width:100%;padding:.6rem .75rem;border-radius:.5rem;background:rgba(21,31,54,.5);border:1px solid var(--d6);color:#fff;font-family:inherit;font-size:.82rem;transition:all .3s;outline:none;-webkit-appearance:none}
@media(min-width:768px){.form-control{padding:.75rem .9rem;border-radius:.65rem;font-size:.88rem}}
.form-control::placeholder{color:#64748b}
.form-control:focus{border-color:rgba(61,220,132,.4);box-shadow:0 0 0 2px rgba(61,220,132,.08)}
textarea.form-control{resize:none;min-height:100px}
@media(min-width:768px){textarea.form-control{min-height:125px}}
.form-success{display:none;padding:.6rem;border-radius:.6rem;background:rgba(61,220,132,.1);border:1px solid rgba(61,220,132,.18);align-items:center;gap:.4rem;color:var(--c);font-size:.75rem;font-weight:500}

/* FOOTER */
.site-footer{border-top:1px solid var(--d7)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}
@media(min-width:480px){.footer-grid{grid-template-columns:1fr 1fr;gap:1.5rem}}
@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;padding:3rem 0}}
.footer-brand p{font-size:.75rem;color:#94a3b8;margin:.6rem 0;max-width:22rem;line-height:1.7}
@media(min-width:768px){.footer-brand p{font-size:.85rem;margin:.8rem 0}}
.footer-location{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:#94a3b8}
@media(min-width:768px){.footer-location{font-size:.85rem}}
.footer-social{display:flex;gap:.4rem}
@media(min-width:768px){.footer-social{gap:.6rem}}
.footer-social a{width:34px;height:34px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all .3s}
@media(min-width:768px){.footer-social a{width:38px;height:38px;border-radius:.6rem;font-size:1rem}}
.footer-social a:hover{background:rgba(61,220,132,.08);transform:scale(1.08)}
.footer-col h4{font-weight:700;font-size:.85rem}
@media(min-width:768px){.footer-col h4{font-size:.95rem}}
.footer-col li{margin-bottom:.4rem}
@media(min-width:768px){.footer-col li{margin-bottom:.6rem}}
.footer-col a{font-size:.75rem;color:#94a3b8;transition:color .3s}
@media(min-width:768px){.footer-col a{font-size:.82rem}}
.footer-col a:hover{color:var(--c)}
.footer-bottom{border-top:1px solid var(--d7);padding:1rem 0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:.6rem}
@media(min-width:480px){.footer-bottom{flex-direction:row}}
.footer-bottom p{font-size:.7rem;color:#64748b}
@media(min-width:768px){.footer-bottom p{font-size:.8rem}}
.back-to-top{width:34px;height:34px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:1rem;transition:all .3s}
.back-to-top:hover{color:var(--c);transform:translateY(-3px)}

/* WHATSAPP FLOAT */
.whatsapp-float{position:fixed;bottom:.75rem;right:.75rem;z-index:999;width:44px;height:44px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 16px rgba(37,211,102,.4);transition:all .3s;animation:pulse-glow 3s infinite}
@media(min-width:768px){.whatsapp-float{bottom:1.25rem;right:1.25rem;width:52px;height:52px}}
.whatsapp-float:hover{transform:scale(1.1)}
.whatsapp-float svg{width:22px;height:22px;fill:#fff}
@media(min-width:768px){.whatsapp-float svg{width:26px;height:26px}}

/* SCROLL REVEAL */
.sr{opacity:0;transform:translateY(25px);transition:all .7s cubic-bezier(.16,1,.3,1)}
.sr-left{opacity:0;transform:translateX(-25px);transition:all .7s cubic-bezier(.16,1,.3,1)}
.sr-right{opacity:0;transform:translateX(25px);transition:all .7s cubic-bezier(.16,1,.3,1)}
.sr-scale{opacity:0;transform:scale(.88);transition:all .7s cubic-bezier(.16,1,.3,1)}
.sr.visible,.sr-left.visible,.sr-right.visible,.sr-scale.visible{opacity:1;transform:none}

/* WP */
.wp-block-image img{border-radius:.75rem}
.page-numbers,.wp-pagenavi a,.wp-pagenavi span{padding:.4rem .8rem;border-radius:.4rem;font-size:.8rem;color:#94a3b8;background:rgba(21,31,54,.6);border:1px solid var(--d6)}
.page-numbers.current{background:var(--c);color:var(--d9);border-color:var(--c)}

/* ANIMATIONS */
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes pulse-glow{0%,100%{box-shadow:0 0 12px rgba(61,220,132,.25)}50%{box-shadow:0 0 25px rgba(61,220,132,.5)}}
@keyframes slideDown{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes marquee-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes marquee-right{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* ELEMENTOR */
.elementor-page .site-nav,.elementor-page .site-footer{display:block}
body.elementor-template-canvas .site-nav,body.elementor-template-canvas .site-footer{display:none}
.elementor-section.elementor-section-boxed>.elementor-container{max-width:1280px}
.elementor-widget-wrap{background:transparent!important}
body.elementor-editor-active .sr,body.elementor-editor-active .sr-left,body.elementor-editor-active .sr-right,body.elementor-editor-active .sr-scale{opacity:1;transform:none}
