@import url('https://fonts.googleapis.com/css2?family=Gabarito:wght@400;500;600;700;800&family=Inter:wght@400;500&display=swap');

:root {
    --s14q9: #B14398;
    --s15gj: #A9BC6B;
    --s16g8: #3A89AB;
    --s1nk: linear-gradient(to bottom right, var(--s14q9), var(--s15gj));
    --s3qj: 'Gabarito', sans-serif;
    --s5dx: 'Inter', sans-serif;
    --s19ej: 56px;
    --s20a2: 42px;
    --s21zh: 30px;
    --s17da: 17px;
    --s18d9: 700;
    --s6lw: 18px;
    --s7ub: 24px;
    --s8l8: 32px;
    --s9w8: 44px;
    --s4a5: 50px;
    --s10o2: 0 4px 12px rgba(0,0,0,0.1);
    --s11ty: 0 8px 24px rgba(0,0,0,0.14);
    --s12kl: 0 16px 40px rgba(0,0,0,0.18);
    --s13zs: 0 24px 60px rgba(0,0,0,0.22);
    --ldyaex: 100px 0;
}
.qpkxtr {
    border-radius: 20px 4px 20px 4px;
    padding: 14px 32px;
}
.qex6, .xczym, .kv6o, .fyvsu, .csml1 {
    border-width: 2px;
    border-color: var(--border-color);
}

.rbnu2 {
    background:
        radial-gradient(ellipse at 20% 50%, var(--s14q9) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 50%, var(--s15gj, var(--s14q9)) 0%, transparent 50%),
        var(--bg-secondary);
    background-blend-mode: overlay;
}
.rbnu2 .hero-bg { opacity: 0.06; }

.qex6, .xczym, .fyvsu, .csml1, .kv6o {
    position: relative;
}
.qex6::after, .xczym::after {
    content: '';
    position: absolute;
    inset: 8px 8px -8px -8px;
    background: var(--s14q9);
    opacity: 0.12;
    border-radius: inherit;
    z-index: -1;
    transition: opacity 0.3s;
}
.qex6:hover::after, .xczym:hover::after {
    opacity: 0.22;
}

.about-section p:first-of-type::first-letter {
    font-size: 3.2em;
    float: left;
    line-height: 0.8;
    margin-right: 10px;
    margin-top: 6px;
    font-weight: 800;
    color: var(--s14q9);
}

.onwfx5 {
    transition: box-shadow 0.3s;
}
.onwfx5:hover {
    box-shadow: 0 0 20px var(--s14q9), 0 0 40px rgba(var(--s14q9), 0.3);
}

.rttf {
    position: relative;
    margin-top: 40px;
}
.rttf::before {
    content: '';
    position: absolute;
    top: -30px;
    left: 0;
    width: 100%;
    height: 30px;
    background: inherit;
    clip-path: ellipse(55% 100% at 50% 100%);
}

.qex6, .xczym, .fyvsu, .csml1, .kv6o {
    border-left: 5px solid var(--s14q9);
    border-radius: 0 var(--s7ub) var(--s7ub) 0;
}

.csml1.featured {
    overflow: hidden;
}
.csml1.featured::before {
    content: '★';
    position: absolute;
    top: 18px;
    right: -30px;
    width: 120px;
    text-align: center;
    padding: 4px 0;
    background: var(--s14q9);
    color: #fff;
    font-size: 12px;
    transform: rotate(45deg);
}

.rbnu2::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: var(--s14q9);
    opacity: 0.08;
    top: -100px;
    right: -100px;
    filter: blur(80px);
}
.rbnu2::after {
    content: '';
    position: absolute;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: var(--s15gj, var(--s14q9));
    opacity: 0.06;
    bottom: -50px;
    left: -50px;
    filter: blur(60px);
    z-index: 0;
}
.iz9c img {
    border-radius: var(--s9w8);
    box-shadow: 0 20px 60px rgba(0,0,0,0.1);
}
.tvflf { position: relative; z-index: 2; }
.ii5qyt { background: linear-gradient(135deg, var(--s14q9), var(--s15gj, var(--s14q9))); color: #fff !important; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-weight: 700; padding: 0; }

.mrzce { background: transparent; padding: 24px 0; }
.mrzce .zc3shd { padding-bottom: 20px; border-bottom: 1px solid rgba(0,0,0,0.06); }
.mrzce.scrolled { background: var(--bg-primary); padding: 12px 0; }
.mrzce.scrolled .zc3shd { border-bottom: none; }
.hgvb .nav-link::after { display: none; }
.hgvb .nav-link:hover { opacity: 0.6; }
.pyg5 { font-weight: 400; letter-spacing: 2px; text-transform: uppercase; font-size: 18px; }

.iyh8j3 {
    background: #2c1810;
    color: rgba(255,235,220,0.6);
    padding-top: 80px;
}
.iyh8j3 h4,.iyh8j3 h5 { color: #fff0e6; }
.dgephs .euatv::after { background: #d4956a; width: 50px; }
.dwyvmf a { color: rgba(255,235,220,0.6); }
.dwyvmf a:hover { color: #d4956a; }
.footer-contact li { color: rgba(255,235,220,0.6); }
.footer-contact li i { color: #d4956a; }
.hrqu a { border-color: rgba(255,235,220,0.15); color: rgba(255,235,220,0.6); }
.hrqu a:hover { background: #d4956a; border-color: #d4956a; color: #2c1810; }
.jtz7 { border-top: 1px solid rgba(255,235,220,0.08); }
.jtz7 p { color: rgba(255,235,220,0.3); }

.contact-section .form-control {
    background: var(--bg-secondary);
    border: none;
    border-radius: var(--s8l8);
    padding: 16px 20px;
    font-size: 15px;
}
.contact-section .form-control:focus { background: var(--bg-primary); box-shadow: 0 0 0 2px var(--s14q9); }
.contact-section .qpkxtr { border-radius: var(--s8l8); }

.pyg5 { font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; border: 2px solid var(--text-primary); padding: 6px 16px; border-radius: 0; }

h3, h4, h5 { font-weight: 400; color: var(--text-primary); }
.dray, .card-title { font-weight: 400; font-size: 20px; letter-spacing: 0.5px; }
.wfywhq { font-weight: 400; }

section:not(.rbnu2) .col-lg-6 img, section:not(.rbnu2) .col-lg-5 img {
    shape-outside: ellipse(48% 48%);
    border-radius: 60% 40% 55% 45% / 55% 45% 55% 45%;
    float: left;
    margin: 0 24px 16px 0;
    max-width: 55%;
    object-fit: cover;
}

.jsg8i { width: 36px; height: 36px; gap: 8px; border: none; background: none; border-radius: 0; }
.jsg8i .ptu8f9 { width: 22px; height: 1.5px; border-radius: 0; transition: transform 0.3s ease, opacity 0.3s ease; }
.jsg8i .ptu8f9:nth-child(2) { display: none; }
.jsg8i.active .ptu8f9:nth-child(1) { transform: translateY(4.75px) rotate(45deg); }
.jsg8i.active .ptu8f9:nth-child(3) { transform: translateY(-4.75px) rotate(-45deg); }

main > section + section::before{content:'/';display:block;text-align:center;color:var(--s14q9);opacity:0.25;font-size:28px;font-weight:300;padding:8px 0;}

.scroll-line{position:fixed;right:16px;top:20%;height:60%;width:3px;background:var(--border-color);border-radius:2px;z-index:9990;opacity:0.4;}.scroll-line .indicator{width:100%;background:var(--s14q9);border-radius:2px;transition:height 0.1s;}@media(max-width:768px){.scroll-line{display:none;}}

.qex6,.xczym{opacity:0;animation:slideLeft 0.6s ease forwards;}.row>[class*="col"]:nth-child(odd) .qex6,.row>[class*="col"]:nth-child(odd) .xczym{animation-name:slideLeft;}.row>[class*="col"]:nth-child(even) .qex6,.row>[class*="col"]:nth-child(even) .xczym{animation-name:slideRight;}.row>[class*="col"]:nth-child(1)>*{animation-delay:0.1s;}.row>[class*="col"]:nth-child(2)>*{animation-delay:0.2s;}.row>[class*="col"]:nth-child(3)>*{animation-delay:0.3s;}.row>[class*="col"]:nth-child(4)>*{animation-delay:0.4s;}@keyframes slideLeft{from{opacity:0;transform:translateX(-40px);}to{opacity:1;transform:translateX(0);}}@keyframes slideRight{from{opacity:0;transform:translateX(40px);}to{opacity:1;transform:translateX(0);}}

.typewriter-cursor{display:inline-block;width:2px;height:1em;background:var(--s14q9);margin-left:4px;animation:twBlink 0.7s step-end infinite;vertical-align:text-bottom;}@keyframes twBlink{50%{opacity:0;}}

@media(prefers-reduced-motion:reduce){.qex6,.xczym,.fyvsu,.csml1,.mwluw,.portfolio-item{opacity:1!important;transform:none!important;animation:none!important;}}

.bg-deco{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;}.bg-deco span{position:absolute;bottom:-20px;border-radius:50%;background:var(--s14q9);opacity:0.02;animation:decoBubble 16s ease-in infinite;}@keyframes decoBubble{0%{transform:translateY(0) scale(1);opacity:0.02;}80%{opacity:0.015;}100%{transform:translateY(-110vh) scale(0.4);opacity:0;}}

main > section {
    opacity: 0;
    transform: translateY(-120px) scale(0.95);
    animation: none;
}
main > section.in-view {
    animation: cascadeDrop 0.9s cubic-bezier(0.34,1.56,0.64,1) forwards;
}
.rbnu2 { opacity: 1 !important; transform: none !important; animation: none !important; }
@keyframes cascadeDrop {
    0% { opacity: 0; transform: translateY(-120px) scale(0.95); }
    60% { opacity: 1; transform: translateY(10px) scale(1.01); }
    80% { transform: translateY(-5px) scale(0.995); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}
@media (max-width: 768px) {
    @keyframes cascadeDrop {
        0% { opacity: 0; transform: translateY(-60px); }
        100% { opacity: 1; transform: translateY(0); }
    }
}

.qex6 .cq28y i,.qex6 .cq28y svg{animation:iconPulse 3s ease-in-out infinite;}.qex6:nth-child(2) .cq28y i{animation-delay:-0.5s;}.qex6:nth-child(3) .cq28y i{animation-delay:-1s;}.qex6:nth-child(4) .cq28y i{animation-delay:-1.5s;}@keyframes iconPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.15);}}

.qex6,.xczym{background:rgba(var(--bg-card-rgb,255,255,255),0.75) !important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,0.18) !important;}.qex6:hover,.xczym:hover{border-color:rgba(var(--s14q9-rgb,99,102,241),0.4) !important;background:rgba(var(--bg-card-rgb,255,255,255),0.88) !important;}

.rbnu2::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,0,150,0.03),rgba(0,150,255,0.03),rgba(255,200,0,0.02),rgba(0,255,150,0.03),rgba(150,0,255,0.03));background-size:500% 500%;animation:iridescentShift 15s ease infinite;pointer-events:none;z-index:0;}.rbnu2{position:relative;}@keyframes iridescentShift{0%,100%{background-position:0% 50%;}25%{background-position:50% 0%;}50%{background-position:100% 50%;}75%{background-position:50% 100%;}}

.js-marquee{overflow:hidden;padding:8px 0;border-bottom:1px solid var(--border-color);}.js-marquee-inner{display:flex;gap:80px;white-space:nowrap;animation:jsMarquee 35s linear infinite;}.js-marquee-inner span{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:5px;opacity:0.25;flex-shrink:0;font-family:var(--s5dx);}@keyframes jsMarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.tex-parallax-sec { position: relative; overflow: clip; }
.tex-parallax-sec::before {
    content: '';
    position: absolute;
    inset: -30% 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.04;
    background:
        radial-gradient(ellipse at 20% 50%, var(--s14q9) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 40%, var(--s15gj, var(--s14q9)) 0%, transparent 45%);
    will-change: transform;
}
.rbnu2.tex-parallax-sec::before { display: none !important; }

html:not(.hzeh0) main > section {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
}

@media (min-width: 993px) {
    .zc3shd {
        flex-wrap: nowrap;
        overflow: visible;
    }
    .hgvb {
        flex: 1 1 auto;
        min-width: 0;
        justify-content: center;
        flex-wrap: nowrap;
        overflow: hidden;
        gap: clamp(10px, 1.8vw, 36px) !important;
    }
    .hgvb .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1.1vw, 15px) !important;
        padding: 8px 0;
        flex-shrink: 0;
    }
    .zw3f, .cmmjw {
        gap: clamp(8px, 1.4vw, 32px) !important;
        flex-wrap: nowrap;
        overflow: hidden;
    }
    .zw3f .nav-link,
    .cmmjw .nav-link {
        white-space: nowrap;
        font-size: clamp(11px, 1.1vw, 15px) !important;
        flex-shrink: 0;
    }
    .nn2w {
        flex-shrink: 0;
        white-space: nowrap;
    }
    .pyg5 {
        flex-shrink: 0;
    }
}

div.rttf:not(.ldyaex) {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1001;
    padding: 6px 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
div.rttf:not(.ldyaex) + .mrzce {
    top: 33px;
    transition: top 0.3s ease, background 0.3s ease, padding 0.3s ease;
}
div.rttf.tr6n {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
}
div.rttf.tr6n + .mrzce,
div.rttf:not(.ldyaex) + .mrzce.scrolled {
    top: 0;
}
div.rttf:not(.ldyaex) ~ .rbnu2 {
    padding-top: 200px;
}

@media (max-width: 992px) {
    div.rttf:not(.ldyaex) {
        position: relative;
        z-index: auto;
        font-size: 11px;
        padding: 4px 0;
    }
    div.rttf:not(.ldyaex) + .mrzce {
        top: 0;
    }
    div.rttf:not(.ldyaex) ~ .rbnu2 {
        padding-top: 140px;
    }
}

@media (max-width: 992px) {
    .jsg8i {
        display: flex !important;
        pointer-events: auto !important;
        opacity: 1 !important;
        z-index: 10001 !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent;
    }
    .jsg8i .ptu8f9 {
        pointer-events: none;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    .hgvb {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        height: 100vh !important;
        height: 100dvh !important;
        z-index: 10000 !important;
        overflow-y: auto !important;
    }
    .hgvb .nav-link {
        font-size: 18px !important;
        padding: 14px 0 !important;
        display: block !important;
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        line-height: 1.4 !important;
        text-decoration: none !important;
    }
    .hgvb .nav-link::after { display: none !important; }
    .nn2w { display: none !important; }
    .zw3f, .cmmjw { display: none !important; }
}

@media (max-width: 992px) {
    .hgvb { right: -100% !important; left: auto !important; width: min(320px,85vw) !important; background: rgba(var(--bg-card-rgb,255,255,255),0.65) !important; backdrop-filter: blur(20px) !important; -webkit-backdrop-filter: blur(20px) !important; border-left: 1px solid rgba(255,255,255,0.2) !important; padding: 100px 32px 40px !important; box-shadow: -4px 0 30px rgba(0,0,0,0.15) !important; transition: right 0.4s cubic-bezier(0.4,0,0.2,1) !important; }
    .hgvb.active { right: 0 !important; }
    .hgvb .nav-link { opacity: 0 !important; transform: translateX(16px) scale(0.96) !important; transition: opacity 0.35s ease, transform 0.35s ease !important; border-bottom: 1px solid rgba(255,255,255,0.15) !important; }
    .hgvb.active .nav-link { opacity: 1 !important; transform: translateX(0) scale(1) !important; }
    .hgvb.active .nav-link:nth-child(1){transition-delay:.08s !important;}
    .hgvb.active .nav-link:nth-child(2){transition-delay:.14s !important;}
    .hgvb.active .nav-link:nth-child(3){transition-delay:.20s !important;}
    .hgvb.active .nav-link:nth-child(4){transition-delay:.26s !important;}
    .hgvb.active .nav-link:nth-child(5){transition-delay:.32s !important;}
    .hgvb.active .nav-link:nth-child(6){transition-delay:.38s !important;}
    .hgvb.active .nav-link:nth-child(7){transition-delay:.44s !important;}
    .hgvb.active .nav-link:nth-child(8){transition-delay:.50s !important;}
}

.qex6,
.xczym,
.fyvsu,
.csml1,
.tgnt9,
.mwluw {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}
.qex6 *,
.xczym *,
.fyvsu *,
.csml1 *,
.tgnt9 * {
    filter: none !important;
}
@supports (animation: none) {
    .qex6, .xczym, .fyvsu {
        animation-fill-mode: forwards !important;
    }
}
.fyvsu + .fyvsu {
    margin-top: 1.5rem;
}

.rbnu2 .tlej ~ .container,
.rbnu2 .tlej ~ .container * {
    color: #fff;
}
.rbnu2 .tlej ~ .container p,
.rbnu2 .tlej ~ .container .oela2 {
    color: rgba(255,255,255,0.85);
}
.rbnu2 .tlej ~ .container .qpkxtr {
    color: inherit;
}
.tjtj .ii5qyt { color: #fff; }
.tjtj .nqc6 { color: var(--s14q9); }
.tjtj .db1g { color: rgba(255,255,255,0.55); }
.tjtj .dwyvmf a { color: rgba(255,255,255,0.65); }
.tjtj .dwyvmf a:hover { color: #fff; }
.iyh8j3[style*="background:none"] { background: none !important; }
.iyh8j3[style*="background:none"]::before,
.iyh8j3[style*="background:none"]::after { display: none !important; }

body {
    line-height: 1.666;
    letter-spacing: 0.0em;
}

.qex6, .xczym, .fyvsu, .kv6o, .csml1 {
    padding: 24px;
}
.qex6, .xczym, .fyvsu, .kv6o, .csml1 .card-body {
    padding: 23px 20px;
}
.row > [class*="col"]:nth-child(1) .qex6,
.row > [class*="col"]:nth-child(1) .xczym {
    padding: 24px;
    border-radius: calc(var(--s7ub) + -2px);
}
.row > [class*="col"]:nth-child(2) .qex6,
.row > [class*="col"]:nth-child(2) .xczym {
    padding: 27px;
    border-radius: calc(var(--s7ub) + 3px);
}
.row > [class*="col"]:nth-child(3) .qex6,
.row > [class*="col"]:nth-child(3) .xczym {
    padding: 21px;
    border-radius: calc(var(--s7ub) + 0px);
}
.row > [class*="col"]:nth-child(4) .qex6,
.row > [class*="col"]:nth-child(4) .xczym {
    padding: 22px;
    border-radius: calc(var(--s7ub) + 0px);
}
.row > [class*="col"]:nth-child(5) .qex6,
.row > [class*="col"]:nth-child(5) .xczym {
    padding: 23px;
    border-radius: calc(var(--s7ub) + 1px);
}
.row > [class*="col"]:nth-child(6) .qex6,
.row > [class*="col"]:nth-child(6) .xczym {
    padding: 25px;
    border-radius: calc(var(--s7ub) + 3px);
}

.qpkxtr {
    padding: 16px 27px;
    font-size: 16px;
    letter-spacing: 0.433px;
    border-radius: calc(var(--s7ub) + 3px);
}
.xio7 {
    padding: 15px 25px;
    border-width: 1px;
}

main > section {
    padding-top: 100px;
    padding-bottom: 106px;
}
main > section:first-child {
    padding-top: 111px;
}
main > section:nth-child(3) {
    padding-top: 103px;
    padding-bottom: 107px;
}
main > section:nth-child(5) {
    padding-top: 92px;
    padding-bottom: 100px;
}
main > section:nth-child(6) {
    padding-top: 104px;
    padding-bottom: 102px;
}

.lo5q {
    margin-bottom: 53px;
}

.qex6, .xczym, .fyvsu, .csml1 {
    box-shadow: 0px 2px 13px rgba(0,0,0,0.059);
}

.rbnu2 {
    padding-top: 102px;
}
.ajwo6l {
    margin-bottom: 22px;
}
.oela2 {
    margin-bottom: 41px;
    font-size: 17px;
    line-height: 1.578;
}
.ii5qyt {
    font-size: 12px;
    letter-spacing: 2.918px;
    margin-bottom: 21px;
}
.qw1ws {
    gap: 17px;
}

.iz9c img {
    border-radius: 12px;
    box-shadow: 0 7px 36px rgba(0,0,0,0.08);
}

.cq28y {
    width: 57px;
    height: 57px;
    font-size: 22px;
    border-radius: 9px;
    margin-bottom: 15px;
}

.dray, .card-title {
    font-size: 20px;
    margin-bottom: 9px;
}
.wmr3kx, .card-text {
    font-size: 15px;
    line-height: 1.617;
}

.qv2d {
    margin-bottom: 19px;
    letter-spacing: 0.0px;
}
.nqc6 {
    font-size: 13px;
    letter-spacing: 3.798px;
    margin-bottom: 13px;
}
.isgw {
    font-size: 18px;
    line-height: 1.663;
}

@media (min-width: 993px) {
    .hgvb {
        gap: 30px;
    }
    .hgvb .nav-link {
        font-size: 13px;
        padding: 9px 0;
    }
}

.iyh8j3 {
    padding-top: 69px;
}
.dgephs .euatv {
    font-size: 18px;
    margin-bottom: 24px;
}
.dwyvmf a {
    font-size: 13px;
}
.dwyvmf li {
    margin-bottom: 11px;
}
.hrqu {
    gap: 11px;
}
.hrqu a {
    width: 36px;
    height: 36px;
}
.jtz7 {
    padding: 23px 0;
    margin-top: 49px;
}

.form-control {
    border-radius: 6px;
    padding: 13px 15px;
    font-size: 15px;
}

.kv6o {
    padding: 32px;
}
.zlnk {
    font-size: 16px;
    line-height: 1.665;
    margin-bottom: 16px;
}
.ufobht {
    width: 52px;
    height: 52px;
}
.phabxn {
    font-size: 15px;
}
.utl8v {
    font-size: 12px;
}

.csml1 {
    padding: 36px;
}
.firnm {
    font-size: 19px;
    margin-bottom: 8px;
}
.nwhl {
    font-size: 43px;
    margin-bottom: 22px;
}
.rh2v li {
    padding: 11px 0;
    font-size: 15px;
}

.sxblgz, .stat-number {
    font-size: 43px;
    margin-bottom: 7px;
}
.xcmkpe {
    font-size: 15px;
    letter-spacing: 0.755px;
}

.tiewa img {
    border-radius: 11px;
}
.ctfv {
    font-size: 18px;
    margin-bottom: 6px;
}
.syhp0 {
    font-size: 13px;
}

.ih7e7 {
    font-size: 35px;
    margin-bottom: 14px;
}
.wfywhq {
    font-size: 17px;
    margin-bottom: 9px;
}

.wow {
    animation-duration: 0.597s !important;
}
.qex6, .xczym, .fyvsu, .kv6o,
.csml1, .mwluw {
    transition-duration: 0.298s;
}

.row {
    --bs-gutter-y: 31px;
}

.sjm0 {
    padding: 83px 0;
}
.ranw0 {
    font-size: 36px;
    margin-bottom: 19px;
}
.lyo1g {
    font-size: 18px;
    margin-bottom: 27px;
}

.fyvsu .ju7tt img {
    border-radius: 14px 14px 0 0;
}
.jidq7 {
    font-size: 12px;
    margin-bottom: 10px;
    gap: 10px;
}

.mrzce {
    padding: 16px 0;
}
.mrzce.scrolled {
    padding: 10px 0;
}
.pyg5 {
    font-size: 23px;
}
.nn2w {
    margin-left: 17px;
}

:root {
    --_gen: 14203;
    --_env: '70a3d36';
    --_ref: 5.80;
    --_seed: 3.34;
}
.layout-anchor { --_stamp: 513; unicode-bidi: normal }
.page-ref { font-variant: normal }

.tjtj h1, .tjtj h2, .tjtj h3, .tjtj h4, .tjtj h5, .tjtj h6 { color: #fff !important; }
.tjtj { color: rgba(255,255,255,0.85) !important; }
.tjtj p, .tjtj li, .tjtj span:not(.badge):not(.qpkxtr), .tjtj .aav4od, .tjtj label, .tjtj blockquote, .tjtj figcaption, .tjtj dt, .tjtj dd, .tjtj td, .tjtj th { color: rgba(255,255,255,0.78) !important; }
.tjtj a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.tjtj a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.tjtj .sxblgz { color: #fff !important; }
.tjtj .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.bg-dark-custom h1, .bg-dark-custom h2, .bg-dark-custom h3, .bg-dark-custom h4, .bg-dark-custom h5, .bg-dark-custom h6 { color: #fff !important; }
.bg-dark-custom { color: rgba(255,255,255,0.85) !important; }
.bg-dark-custom p, .bg-dark-custom li, .bg-dark-custom span:not(.badge):not(.qpkxtr), .bg-dark-custom .aav4od, .bg-dark-custom label, .bg-dark-custom blockquote, .bg-dark-custom figcaption, .bg-dark-custom dt, .bg-dark-custom dd, .bg-dark-custom td, .bg-dark-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-dark-custom a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-dark-custom a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.bg-dark-custom .sxblgz { color: #fff !important; }
.bg-dark-custom .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.bg-gradient-custom h1, .bg-gradient-custom h2, .bg-gradient-custom h3, .bg-gradient-custom h4, .bg-gradient-custom h5, .bg-gradient-custom h6 { color: #fff !important; }
.bg-gradient-custom { color: rgba(255,255,255,0.85) !important; }
.bg-gradient-custom p, .bg-gradient-custom li, .bg-gradient-custom span:not(.badge):not(.qpkxtr), .bg-gradient-custom .aav4od, .bg-gradient-custom label, .bg-gradient-custom blockquote, .bg-gradient-custom figcaption, .bg-gradient-custom dt, .bg-gradient-custom dd, .bg-gradient-custom td, .bg-gradient-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-gradient-custom a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-gradient-custom a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.bg-gradient-custom .sxblgz { color: #fff !important; }
.bg-gradient-custom .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.bg-accent-custom h1, .bg-accent-custom h2, .bg-accent-custom h3, .bg-accent-custom h4, .bg-accent-custom h5, .bg-accent-custom h6 { color: #fff !important; }
.bg-accent-custom { color: rgba(255,255,255,0.85) !important; }
.bg-accent-custom p, .bg-accent-custom li, .bg-accent-custom span:not(.badge):not(.qpkxtr), .bg-accent-custom .aav4od, .bg-accent-custom label, .bg-accent-custom blockquote, .bg-accent-custom figcaption, .bg-accent-custom dt, .bg-accent-custom dd, .bg-accent-custom td, .bg-accent-custom th { color: rgba(255,255,255,0.78) !important; }
.bg-accent-custom a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.bg-accent-custom a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.bg-accent-custom .sxblgz { color: #fff !important; }
.bg-accent-custom .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.sjm0 h1, .sjm0 h2, .sjm0 h3, .sjm0 h4, .sjm0 h5, .sjm0 h6 { color: #fff !important; }
.sjm0 { color: rgba(255,255,255,0.85) !important; }
.sjm0 p, .sjm0 li, .sjm0 span:not(.badge):not(.qpkxtr), .sjm0 .aav4od, .sjm0 label, .sjm0 blockquote, .sjm0 figcaption, .sjm0 dt, .sjm0 dd, .sjm0 td, .sjm0 th { color: rgba(255,255,255,0.78) !important; }
.sjm0 a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.sjm0 a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.sjm0 .sxblgz { color: #fff !important; }
.sjm0 .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.snbg0e h1, .snbg0e h2, .snbg0e h3, .snbg0e h4, .snbg0e h5, .snbg0e h6 { color: #fff !important; }
.snbg0e { color: rgba(255,255,255,0.85) !important; }
.snbg0e p, .snbg0e li, .snbg0e span:not(.badge):not(.qpkxtr), .snbg0e .aav4od, .snbg0e label, .snbg0e blockquote, .snbg0e figcaption, .snbg0e dt, .snbg0e dd, .snbg0e td, .snbg0e th { color: rgba(255,255,255,0.78) !important; }
.snbg0e a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.snbg0e a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.snbg0e .sxblgz { color: #fff !important; }
.snbg0e .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.rttf h1, .rttf h2, .rttf h3, .rttf h4, .rttf h5, .rttf h6 { color: #fff !important; }
.rttf { color: rgba(255,255,255,0.85) !important; }
.rttf p, .rttf li, .rttf span:not(.badge):not(.qpkxtr), .rttf .aav4od, .rttf label, .rttf blockquote, .rttf figcaption, .rttf dt, .rttf dd, .rttf td, .rttf th { color: rgba(255,255,255,0.78) !important; }
.rttf a:not(.qpkxtr):not(.nav-link) { color: rgba(255,255,255,0.85) !important; }
.rttf a:not(.qpkxtr):not(.nav-link):hover { color: #fff !important; }
.rttf .sxblgz { color: #fff !important; }
.rttf .xcmkpe { color: rgba(255,255,255,0.7) !important; }

.iyh8j3 { color: rgba(255,255,255,0.65) !important; }
.iyh8j3 h1, .iyh8j3 h2, .iyh8j3 h3,
.iyh8j3 h4, .iyh8j3 h5, .iyh8j3 h6,
.iyh8j3 .euatv { color: #fff !important; }
.iyh8j3 p, .iyh8j3 li, .iyh8j3 span,
.iyh8j3 label { color: rgba(255,255,255,0.6) !important; }
.iyh8j3 a:not(.qpkxtr) { color: rgba(255,255,255,0.65) !important; }
.iyh8j3 a:not(.qpkxtr):hover { color: #fff !important; }

/* Cube-slider / Proyectos section */
#cube-slider .ofg0gd {
    height: 460px;
    overflow: hidden;
}
#cube-slider .ofg0gd .swiper-slide {
    height: 100%;
}
#cube-slider .ofg0gd .swiper-slide > div {
    height: 100%;
}
#cube-slider .ofg0gd .swiper-slide img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover;
    display: block;
    float: none !important;
    max-width: 100% !important;
    shape-outside: none !important;
    border-radius: 0 !important;
}
#cube-slider .swiper-pagination {
    margin-top: 24px;
    position: static;
    display: flex;
    justify-content: center;
    gap: 8px;
}

/* Portfolio section */
#pg-portfolio .portfolio-item img {
    float: none !important;
    shape-outside: none !important;
    border-radius: var(--s8l8) var(--s8l8) 0 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
}
#pg-portfolio .portfolio-item:hover .portfolio-overlay {
    background: linear-gradient(transparent 20%, rgba(10,10,26,0.97)) !important;
}
#pg-portfolio .swiper-slide {
    height: auto;
}

/* Industries section stability */
#industries .industries-head {
    row-gap: 10px;
}

#industries .sjw4 .qex6 {
    opacity: 1 !important;
    animation: none !important;
    transform: none;
    height: 100%;
}

#industries .sjw4 .swiper-slide {
    height: auto;
}

@media (max-width: 767px) {
    #industries .industries-head {
        align-items: flex-start !important;
    }

    #industries .qv2d {
        font-size: clamp(24px, 7vw, 30px);
        line-height: 1.2;
    }
}
