.s-p-capacidade{--primary: #112A5A;--primary-light: #1E4D8C;--primary-dark: #081A38;--accent: #F39C12;--accent-hover: #D98208;--accent-soft: #FFF3E0;--bg-page: #F4F6F9;--bg-soft: #EEF2F7;--card-bg: #FFFFFF;--text-dark: #243044;--text-muted: #667085;--border: #E2E8F0;--success: #27AE60;--radius: 14px;--shadow: 0 12px 34px rgba(17, 42, 90, 0.08);--transition: all .28s ease}
:where(.s-p-capacidade) *{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.s-p-capacidade{scroll-behavior: smooth}
.s-p-capacidade{font-family: 'Inter', Arial, sans-serif;background: var(--bg-page);color: var(--text-dark);overflow-x: hidden;-webkit-font-smoothing: antialiased}
.s-p-capacidade button,.s-p-capacidade input,.s-p-capacidade select,.s-p-capacidade textarea{
    font-family: inherit;
}
.s-p-capacidade button{
    cursor: pointer;
    border: none;
}
.s-p-capacidade a{
    text-decoration: none;
    color: inherit;
}
.s-p-capacidade .container{
    width: min(1240px, 92%);
    margin: 0 auto;
}
.s-p-capacidade .hero{
    position: relative;
    min-height: 560px;
    background:
        radial-gradient(circle at 18% 20%, rgba(243,156,18,.18), transparent 30%),
        linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 58%, #153D78 100%);
    overflow: hidden;
    display: flex;
    align-items: center;
    color: #FFFFFF;
}
.s-p-capacidade .hero::before{
    content: "INOPLAST";
    position: absolute;
    right: -4vw;
    top: 18%;
    font-size: 12vw;
    font-weight: 900;
    letter-spacing: -8px;
    color: rgba(255,255,255,.045);
    line-height: 1;
    white-space: nowrap;
}
.s-p-capacidade .hero::after{
    content: "";
    position: absolute;
    inset: auto -80px -140px -80px;
    height: 240px;
    background: #273f6b;
    transform: rotate(-3deg);
    transform-origin: left top;
}
.s-p-capacidade .hero-grid{
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 48px;
    align-items: center;
    padding: 82px 0 120px;
}
.s-p-capacidade .hero-tag{
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--accent);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .18em;
    margin-bottom: 20px;
}
.s-p-capacidade .hero-tag::before{
    content: "";
    width: 42px;
    height: 2px;
    background: var(--accent);
    border-radius: 99px;
}
.s-p-capacidade .hero h1{
    font-size: clamp(40px, 5.2vw, 76px);
    line-height: .96;
    letter-spacing: -3px;
    font-weight: 900;
    margin-bottom: 22px;
}
.s-p-capacidade .hero h1 span{
    color: var(--accent);
}
.s-p-capacidade .hero p{
    color: rgba(255,255,255,.82);
    font-size: 17px;
    line-height: 1.75;
    max-width: 660px;
    font-weight: 500;
}
.s-p-capacidade .hero-actions{
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 34px;
}
.s-p-capacidade .btn{
    min-height: 50px;
    border-radius: 10px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    transition: var(--transition);
}
.s-p-capacidade .btn-primary{
    background: var(--accent);
    color: #FFFFFF;
    box-shadow: 0 12px 24px rgba(243,156,18,.24);
}
.s-p-capacidade .btn-primary:hover{
    background: var(--accent-hover);
    transform: translateY(-2px);
}
.s-p-capacidade .btn-outline{
    background: rgba(255,255,255,.08);
    color: #FFFFFF;
    border: 1px solid rgba(255,255,255,.22);
    backdrop-filter: blur(8px);
}
.s-p-capacidade .btn-outline:hover{
    background: rgba(255,255,255,.14);
    transform: translateY(-2px);
}
.s-p-capacidade .hero-visual{
    position: relative;
    min-height: 420px;
}
.s-p-capacidade .machine-orbit{
    position: absolute;
    inset: 0;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 32px;
    background: rgba(255,255,255,.055);
    backdrop-filter: blur(10px);
    box-shadow: 0 30px 80px rgba(0,0,0,.18);
    overflow: hidden;
}
.s-p-capacidade .machine-orbit::before{
    content: "";
    position: absolute;
    inset: 26px;
    border: 1px dashed rgba(255,255,255,.18);
    border-radius: 26px;
}
.s-p-capacidade .machine-img{
    position: absolute;
    object-fit: contain;
    filter: drop-shadow(0 18px 25px rgba(0,0,0,.25));
}
.s-p-capacidade .machine-main{
    width: 72%;
    left: 13%;
    top: 10%;
}
.s-p-capacidade .machine-side{
    width: 45%;
    left: 4%;
    bottom: 6%;
}
.s-p-capacidade .machine-small{
    width: 40%;
    right: 2%;
    bottom: 10%;
}
.s-p-capacidade .hero-stat-card{
    position: absolute;
    right: -18px;
    top: 54px;
    z-index: 3;
    background: #FFFFFF;
    color: var(--primary);
    border-radius: 18px;
    padding: 18px;
    box-shadow: var(--shadow);
    width: 210px;
}
.s-p-capacidade .hero-stat-card strong{
    display: block;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -1px;
}
.s-p-capacidade .hero-stat-card span{
    display: block;
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    margin-top: 4px;
}
.s-p-capacidade .section{
    padding: 86px 0;
    position: relative;
}
.s-p-capacidade .section.white{
    background: #FFFFFF;
}
.s-p-capacidade .section-title-wrap{
    max-width: 780px;
    margin-bottom: 36px;
}
.s-p-capacidade .section-kicker{
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--accent);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .16em;
    margin-bottom: 12px;
}
.s-p-capacidade .section-kicker::before{
    content: "";
    width: 36px;
    height: 2px;
    background: var(--accent);
}
.s-p-capacidade .section-title{
    font-size: clamp(28px, 3vw, 44px);
    color: var(--primary);
    font-weight: 900;
    letter-spacing: -1.8px;
    line-height: 1.1;
    margin-bottom: 14px;
}
.s-p-capacidade .section-subtitle{
    color: var(--text-muted);
    font-size: 16px;
    line-height: 1.75;
    font-weight: 500;
}
.s-p-capacidade .capability-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}
.s-p-capacidade .capability-card{
    background: var(--card-bg);
    border: 1px solid var(--border);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: var(--transition);
}
.s-p-capacidade .capability-card:hover{
    transform: translateY(-6px);
    border-color: rgba(243,156,18,.34);
}
.s-p-capacidade .capability-head{
    min-height: 116px;
    background: linear-gradient(135deg, var(--primary) 0%, #0E3470 100%);
    color: #FFFFFF;
    padding: 22px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    position: relative;
    overflow: hidden;
}
.s-p-capacidade .capability-head h3{
    position: relative;
    z-index: 2;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: -1px;
}
.s-p-capacidade .capability-icon{
    position: relative;
    z-index: 2;
    width: 58px;
    height: 58px;
    border-radius: 16px;
    background: #FFFFFF;
    color: var(--accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    box-shadow: 0 12px 22px rgba(0,0,0,.14);
}
.s-p-capacidade .capability-body{
    padding: 24px;
}
.s-p-capacidade .capability-list{
    list-style: none;
    display: grid;
    gap: 14px;
}
.s-p-capacidade .capability-list li{
    display: flex;
    gap: 11px;
    align-items: flex-start;
    color: var(--text-dark);
    font-size: 15px;
    line-height: 1.42;
    font-weight: 750;
}
.s-p-capacidade .capability-list li i{
    color: var(--accent);
    margin-top: 3px;
}
.s-p-capacidade .photo-showcase{
    display: grid;
    grid-template-columns: 1.12fr .88fr;
    gap: 18px;
    align-items: stretch;
    max-width: 1180px;
    margin: 0 auto;
}
.s-p-capacidade .photo-main{
    height: 520px;
    min-height: 0;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    box-shadow: var(--shadow);
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
}
.s-p-capacidade .photo-main img,.s-p-capacidade .photo-tile img{
    width: 100%;
    flex: 1;
    min-height: 0;
    object-fit: contain;
    object-position: center;
    background: #FFFFFF;
    padding: 4px;
    display: block;
}
.s-p-capacidade .photo-label{
    position: static;
    left: auto;
    bottom: auto;
    right: auto;
    background: rgba(8, 26, 56, .96);
    border: 0;
    color: #FFFFFF;
    border-radius: 0;
    padding: 12px 14px;
}
.s-p-capacidade .photo-label span{
    display: block;
    color: var(--accent);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .13em;
    margin-bottom: 4px;
}
.s-p-capacidade .photo-label strong{
    display: block;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 900;
}
.s-p-capacidade .photo-side{
    display: grid;
    gap: 14px;
}
.s-p-capacidade .photo-tile{
    height: 252px;
    min-height: 0;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    box-shadow: var(--shadow);
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
}
.s-p-capacidade .machine-strip{
    background:
        linear-gradient(135deg, rgba(17,42,90,.96), rgba(8,26,56,.96)),
        url('../img/ed13546b41b74007b7b0d27a7cad3320.jpg');
    background-size: cover;
    background-position: center;
    padding: 70px 0;
    color: #FFFFFF;
}
.s-p-capacidade .machine-strip-grid{
    display: grid;
    grid-template-columns: 1fr .92fr;
    gap: 34px;
    align-items: center;
}
.s-p-capacidade .machine-strip h2{
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -1.5px;
    margin-bottom: 16px;
}
.s-p-capacidade .machine-strip p{
    color: rgba(255,255,255,.78);
    line-height: 1.75;
    font-size: 15.5px;
}
.s-p-capacidade .machine-png-grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}
.s-p-capacidade .machine-png-grid{
    max-width: 620px;
    margin-left: auto;
}
.s-p-capacidade .machine-png-card{
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 16px;
    padding: 14px;
    min-height: 138px;
    display: grid;
    place-items: center;
    backdrop-filter: blur(10px);
}
.s-p-capacidade .machine-png-card img{
    max-width: 100%;
    max-height: 108px;
    object-fit: contain;
    filter: drop-shadow(0 12px 16px rgba(0,0,0,.24));
}
.s-p-capacidade .custom-project{
    background: linear-gradient(135deg, var(--accent) 0%, #F77F00 100%);
    color: #FFFFFF;
    position: relative;
    overflow: hidden;
}
.s-p-capacidade .custom-project::before{
    content: "PROJETOS SOB MEDIDA";
    position: absolute;
    left: -4%;
    top: 18%;
    font-size: 7vw;
    font-weight: 900;
    letter-spacing: -5px;
    color: rgba(255,255,255,.10);
    white-space: nowrap;
}
.s-p-capacidade .custom-grid{
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 40px;
    align-items: center;
}
.s-p-capacidade .custom-project h2{
    font-size: clamp(34px, 4.5vw, 62px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -2.5px;
    margin-bottom: 18px;
}
.s-p-capacidade .custom-project p{
    font-size: 17px;
    line-height: 1.75;
    font-weight: 600;
    color: rgba(255,255,255,.92);
}
.s-p-capacidade .custom-actions{
    margin-top: 30px;
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}
.s-p-capacidade .btn-white{
    background: #FFFFFF;
    color: var(--primary);
}
.s-p-capacidade .btn-white:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(0,0,0,.14);
}
.s-p-capacidade .btn-dark{
    background: var(--primary);
    color: #FFFFFF;
}
.s-p-capacidade .btn-dark:hover{
    background: var(--primary-dark);
    transform: translateY(-2px);
}
.s-p-capacidade .liner-display{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.s-p-capacidade .liner-display{
    max-width: 560px;
    margin-left: auto;
}
.s-p-capacidade .liner-card{
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.26);
    border-radius: 20px;
    padding: 16px;
    min-height: 200px;
    display: grid;
    place-items: center;
    backdrop-filter: blur(10px);
}
.s-p-capacidade .liner-card img{
    max-width: 100%;
    max-height: 165px;
    object-fit: contain;
    filter: drop-shadow(0 14px 18px rgba(0,0,0,.14));
}
.s-p-capacidade .process-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}
.s-p-capacidade .process-card{
    background: #FFFFFF;
    border: 1px solid var(--border);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: var(--transition);
}
.s-p-capacidade .process-card:hover{
    transform: translateY(-6px);
    border-color: rgba(243,156,18,.34);
}
.s-p-capacidade .process-top{
    height: 122px;
    background: linear-gradient(135deg, var(--primary) 0%, #0E3470 100%);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    text-align: center;
}
.s-p-capacidade .process-card:nth-child(2) .process-top{
    background: linear-gradient(135deg, var(--accent) 0%, #F77F00 100%);
}
.s-p-capacidade .process-top h3{
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -1px;
}
.s-p-capacidade .process-body{
    padding: 22px;
}
.s-p-capacidade .process-body strong{
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--primary);
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 10px;
}
.s-p-capacidade .process-body strong i{
    color: var(--accent);
}
.s-p-capacidade .process-body p{
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.65;
}
.s-p-capacidade .contact-section{
    background:
        radial-gradient(circle at 85% 20%, rgba(243,156,18,.14), transparent 28%),
        linear-gradient(135deg, #FFFFFF 0%, #F7F9FC 100%);
}
.s-p-capacidade .contact-cta-card{
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 34px;
    align-items: center;
    padding: 42px;
    border-radius: 24px;
    color: #FFFFFF;
    background:
        radial-gradient(circle at top right, rgba(243,156,18,.18), transparent 34%),
        linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    box-shadow: var(--shadow);
}
.s-p-capacidade .contact-cta-card::after{
    content: "INOPLAST";
    position: absolute;
    right: -26px;
    bottom: -24px;
    color: rgba(255,255,255,.045);
    font-size: 92px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -5px;
    pointer-events: none;
}
.s-p-capacidade .contact-cta-copy,.s-p-capacidade .contact-cta-actions{
    position: relative;
    z-index: 2;
}
.s-p-capacidade .contact-cta-copy h2{
    max-width: 760px;
    font-size: clamp(30px, 4vw, 50px);
    line-height: 1.06;
    font-weight: 900;
    letter-spacing: -2px;
    margin-bottom: 14px;
}
.s-p-capacidade .contact-cta-copy p{
    max-width: 760px;
    color: rgba(255,255,255,.80);
    font-size: 15px;
    line-height: 1.75;
}
.s-p-capacidade .contact-cta-points{
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 22px;
}
.s-p-capacidade .contact-cta-points span{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,.92);
    font-size: 12.5px;
    font-weight: 750;
}
.s-p-capacidade .contact-cta-points i{ color: var(--accent); }
.s-p-capacidade .contact-cta-actions{
    display: grid;
    gap: 12px;
    min-width: 245px;
}
.s-p-capacidade .contact-cta-actions .btn{ width: 100%; }
.s-p-capacidade .page-end{
    background: var(--primary-dark);
    color: rgba(255,255,255,.72);
    text-align: center;
    padding: 22px 20px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
}
.s-p-capacidade .page-end span{
    color: var(--accent);
}
@media (max-width: 1366px) and (max-height: 0px){.s-p-capacidade .photo-showcase{
        max-width: 1100px;
        gap: 14px;
    }
.s-p-capacidade .photo-main{
        height: 430px;
    }
.s-p-capacidade .photo-tile{
        height: 206px;
    }
.s-p-capacidade .photo-main img,.s-p-capacidade .photo-tile img{
        padding: 4px;
    }
.s-p-capacidade .photo-label{
        padding: 10px 12px;
    }
.s-p-capacidade .photo-label strong{
        font-size: 13px;
    }
.s-p-capacidade .machine-png-card{
        min-height: 118px;
        padding: 12px;
    }
.s-p-capacidade .machine-png-card img{
        max-height: 92px;
    }
.s-p-capacidade .liner-card{
        min-height: 170px;
    }
.s-p-capacidade .liner-card img{
        max-height: 140px;
    }}
@media (max-width: 1040px){.s-p-capacidade .hero-grid,.s-p-capacidade .photo-showcase,.s-p-capacidade .machine-strip-grid,.s-p-capacidade .custom-grid{
        grid-template-columns: 1fr;
    }
.s-p-capacidade .hero-visual{
        min-height: 380px;
    }
.s-p-capacidade .capability-grid,.s-p-capacidade .process-grid{
        grid-template-columns: 1fr;
    }
.s-p-capacidade .contact-info{
        position: relative;
        top: 0;
    }}
@media (max-width: 720px){.s-p-capacidade .hero{
        min-height: auto;
    }
.s-p-capacidade .hero-grid{
        padding: 62px 0 96px;
        gap: 30px;
    }
.s-p-capacidade .hero h1{
        letter-spacing: -2px;
    }
.s-p-capacidade .hero-visual{
        min-height: 300px;
    }
.s-p-capacidade .hero-stat-card{
        right: 10px;
        top: 20px;
        width: 180px;
    }
.s-p-capacidade .machine-main{
        width: 82%;
        left: 8%;
    }
.s-p-capacidade .machine-side{
        width: 47%;
    }
.s-p-capacidade .machine-small{
        width: 42%;
    }
.s-p-capacidade .section{
        padding: 62px 0;
    }
.s-p-capacidade .photo-main{
        height: 300px;
        min-height: 0;
    }
.s-p-capacidade .photo-tile{
        height: 240px;
        min-height: 0;
    }
.s-p-capacidade .photo-showcase,.s-p-capacidade .machine-png-grid,.s-p-capacidade .liner-display,.s-p-capacidade .form-grid{
        grid-template-columns: 1fr;
    }
.s-p-capacidade .machine-png-grid,.s-p-capacidade .liner-display{
        max-width: 100%;
    }
.s-p-capacidade .form-actions .btn{
        width: 100%;
    }}
@media (max-width: 720px){.s-p-capacidade .contact-cta-card{
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 28px 20px;
        border-radius: 18px;
    }
.s-p-capacidade .contact-cta-card::after{
        font-size: 58px;
        right: -14px;
        bottom: -8px;
    }
.s-p-capacidade .contact-cta-copy h2{
        font-size: 29px;
        letter-spacing: -1.2px;
    }
.s-p-capacidade .contact-cta-copy p{
        font-size: 14px;
        line-height: 1.65;
    }
.s-p-capacidade .contact-cta-points{
        display: grid;
        gap: 9px;
    }
.s-p-capacidade .contact-cta-actions{
        min-width: 0;
        width: 100%;
    }}
/* botao convertido em link: baseline de baixa especificidade (:where) para nao sobrescrever o display/alinhamento do .btn original */
:where(.s-p-capacidade) a[data-btn]{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-align:center;font-family:inherit}
.s-p-capacidade .btn-catalog.is-unavailable{cursor:default;pointer-events:none}
/* barra de secoes: no Wix nunca ficava fixa (iframe de altura total); mantem o comportamento atual e evita ficar sob o cabecalho fixo */
.s-p-capacidade .section-jump-nav{position:relative;top:auto}
/* evita estouro lateral em telas de 320px (item de grade com palavra longa em caixa alta) */
.s-p-capacidade .cta-text{min-width:0;overflow-wrap:anywhere}
@media (max-width:1100px){.s-p-capacidade .cta-layout,.s-p-capacidade .intro-grid,.s-p-capacidade .segments-layout{grid-template-columns:minmax(0,1fr)}}
