/* =========================================================
   RPP PUBLIC UX SYSTEM 2026 - camada global de refinamento
   ========================================================= */

:root {
    --rpp-radius-sm: 14px;
    --rpp-radius-md: 22px;
    --rpp-radius-lg: 30px;
    --rpp-ease: cubic-bezier(.2,.8,.2,1);
}

html {
    scroll-padding-top: 110px;
}

body {
    color: var(--rpp-ink);
}

.site-header {
    transition: background .25s var(--rpp-ease), box-shadow .25s var(--rpp-ease), transform .25s var(--rpp-ease);
}

.site-header.scrolled {
    box-shadow: 0 18px 48px rgba(7,28,20,.10);
}

.loader-box {
    position: relative;
}

.loader-favicon {
    width: 34px;
    height: 34px;
    object-fit: contain;
    margin-bottom: 10px;
    border-radius: 10px;
}

.loader-logo {
    max-width: 180px;
    max-height: 74px;
    object-fit: contain;
}

.loader-logo-missing::after {
    content: "Rações Pica Pau";
    display: block;
    margin-top: 6px;
    color: #062719;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.1;
}

.logo-fallback-title {
    display: none;
    color: #062719;
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
}

.logo-area.logo-missing .logo-fallback-title {
    display: none;
}

.logo-title {
    display: block;
    color: #062719;
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
}

.site-container,
.container {
    width: min(1220px, calc(100% - 32px));
}

.breadcrumb,
.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    color: rgba(7,28,20,.62);
    font-size: 13px;
    font-weight: 800;
}

.breadcrumb a,
.breadcrumbs a {
    color: var(--rpp-green);
    text-decoration: none;
}

.eyebrow,
.section-title span,
.brands-hero .eyebrow,
.page-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid rgba(0,143,69,.16);
    border-radius: 999px;
    background: rgba(0,143,69,.08);
    color: var(--rpp-green);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.eyebrow::before,
.section-title span::before,
.page-section-label::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--rpp-green-2);
}

.section-title,
.rpp-section-head,
.catalog-header,
.line-header {
    position: relative;
}

.section-title h1,
.section-title h2,
.catalog-header h2,
.line-header h3,
.brands-hero h1,
.products-hero h1,
.content-hero h1,
.page-hero h1 {
    letter-spacing: -.045em;
}

.product-card,
.brand-card,
.brands-card,
.partner-card,
.content-pro-card,
.trust-pro-card,
.page-card,
.rpp-product-card,
.rpp-stack-card {
    border: 1px solid rgba(7,28,20,.10);
    border-radius: var(--rpp-radius-md);
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 42px rgba(7,28,20,.07);
    transition: transform .25s var(--rpp-ease), box-shadow .25s var(--rpp-ease), border-color .25s var(--rpp-ease);
}

.product-card:hover,
.brand-card:hover,
.brands-card:hover,
.partner-card:hover,
.content-pro-card:hover,
.trust-pro-card:hover,
.page-card:hover,
.rpp-product-card:hover,
.rpp-stack-card:hover {
    transform: translateY(-5px);
    border-color: rgba(0,143,69,.22);
    box-shadow: 0 24px 70px rgba(7,28,20,.12);
}

.btn-main,
.btn-secondary,
.btn-cta,
.rpp-btn,
.details,
.whatsapp,
button[type="submit"] {
    border-radius: 16px;
    transition: transform .22s var(--rpp-ease), box-shadow .22s var(--rpp-ease), filter .22s var(--rpp-ease);
}

.btn-main:hover,
.btn-secondary:hover,
.btn-cta:hover,
.rpp-btn:hover,
.details:hover,
.whatsapp:hover,
button[type="submit"]:hover {
    transform: translateY(-3px);
    filter: saturate(1.04);
}

input,
select,
textarea {
    border-radius: 16px;
    transition: border-color .2s var(--rpp-ease), box-shadow .2s var(--rpp-ease), background .2s var(--rpp-ease);
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--rpp-yellow)!important;
    box-shadow: 0 0 0 4px rgba(255,204,0,.18)!important;
    outline: none;
}

.rpp-reveal,
.reveal-item,
.home-section-pro,
.content-pro-card,
.trust-pro-card,
.product-card,
.brands-card,
.page-card {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .55s var(--rpp-ease), transform .55s var(--rpp-ease);
}

.rpp-reveal.is-visible,
.reveal-item.is-visible,
.home-section-pro.is-visible,
.content-pro-card.is-visible,
.trust-pro-card.is-visible,
.product-card.is-visible,
.brands-card.is-visible,
.page-card.is-visible,
.visible {
    opacity: 1;
    transform: translateY(0);
}

.rpp-search-results {
    position: absolute;
    inset: calc(100% + 10px) 0 auto 0;
    z-index: 9999;
    display: none;
    overflow: hidden;
    border: 1px solid rgba(7,28,20,.12);
    border-radius: 20px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 26px 70px rgba(7,28,20,.16);
}

.rpp-search-results.active {
    display: grid;
}

.rpp-search-results a,
.rpp-search-results div {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border-bottom: 1px solid rgba(7,28,20,.07);
    color: var(--rpp-ink);
    text-decoration: none;
}

.rpp-search-results img {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    object-fit: cover;
    background: #f3f7f2;
}

.rpp-search-results strong,
.rpp-search-results span {
    display: block;
}

.rpp-search-results span {
    margin-top: 3px;
    color: var(--rpp-muted);
    font-size: 12px;
    font-weight: 800;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .01ms!important;
        animation-iteration-count: 1!important;
        scroll-behavior: auto!important;
        transition-duration: .01ms!important;
    }
}

@media (max-width: 760px) {
    .site-container,
    .container,
    .rpp-container {
        width: min(100% - 24px, 1220px);
    }

    .product-card,
    .brand-card,
    .brands-card,
    .partner-card,
    .page-card {
        border-radius: 20px;
    }
}

/* =========================================================
   RPP 2026 - PADRAO MODERNO GLOBAL
   ========================================================= */

:root{
    --rpp-ink:#071c14;
    --rpp-ink-2:#123127;
    --rpp-green:#008f45;
    --rpp-green-2:#00b969;
    --rpp-yellow:#ffcc00;
    --rpp-blue:#246bfe;
    --rpp-red:#e63737;
    --rpp-paper:#f5f8f2;
    --rpp-white:#ffffff;
    --rpp-muted:#61736b;
    --rpp-border:rgba(7,28,20,.12);
    --rpp-shadow:0 24px 70px rgba(7,28,20,.12);
    --rpp-shadow-soft:0 14px 38px rgba(7,28,20,.08);
}

body{
    background:
        radial-gradient(circle at 12% 0%, rgba(0,143,69,.08), transparent 28%),
        radial-gradient(circle at 90% 10%, rgba(255,204,0,.12), transparent 26%),
        var(--rpp-paper);
}

.site-main{
    background:transparent;
}

.rpp-container{
    width:min(1220px, calc(100% - 32px));
    margin:0 auto;
}

.rpp-home{
    color:var(--rpp-ink);
    overflow:hidden;
}

.rpp-section{
    padding:78px 0;
    position:relative;
}

.rpp-section-soft{
    background:
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(245,248,242,.95));
}

.rpp-kicker{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-height:38px;
    padding:0 15px;
    border:1px solid rgba(0,143,69,.18);
    border-radius:999px;
    background:rgba(0,143,69,.09);
    color:var(--rpp-green);
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.rpp-kicker::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--rpp-green-2);
    box-shadow:0 0 18px rgba(0,185,105,.7);
}

.rpp-kicker.light{
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.18);
    color:var(--rpp-yellow);
}

.rpp-hero{
    min-height:calc(100vh - var(--header-height));
    display:block;
    padding:0;
    background:#061d16;
}

.rpp-hero-slider{
    position:relative;
    min-height:calc(100vh - var(--header-height));
    overflow:hidden;
}

.rpp-hero-slide{
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    transition:opacity .7s ease, visibility .7s ease;
}

.rpp-hero-slide.is-active{
    opacity:1;
    visibility:visible;
}

.rpp-hero-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.rpp-hero-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(3,16,12,.92), rgba(3,16,12,.62) 48%, rgba(3,16,12,.26)),
        radial-gradient(circle at 22% 18%, rgba(0,143,69,.28), transparent 30%),
        radial-gradient(circle at 82% 8%, rgba(255,204,0,.18), transparent 25%);
}

.rpp-hero-content{
    position:relative;
    min-height:calc(100vh - var(--header-height));
    display:flex;
    align-items:center;
    padding:80px 0 92px;
}

.rpp-hero-copy{
    max-width:850px;
}

.rpp-hero-copy h1,
.rpp-section-head h2,
.rpp-split-head h2,
.rpp-commercial h2,
.rpp-tech-panel h2,
.rpp-final-box h2{
    margin:16px 0;
    color:var(--rpp-ink);
    font-weight:950;
    letter-spacing:-.055em;
    line-height:.98;
}

.rpp-hero-copy h1{
    max-width:840px;
    font-size:clamp(44px,6.4vw,86px);
    color:#fff;
}

.rpp-hero-copy p,
.rpp-section-head p,
.rpp-commercial p,
.rpp-tech-panel p,
.rpp-final-box p{
    max-width:720px;
    color:var(--rpp-muted);
    font-size:18px;
    line-height:1.75;
}

.rpp-hero-copy p{
    color:rgba(255,255,255,.82);
}

.rpp-slider-dots{
    position:absolute;
    z-index:5;
    left:50%;
    bottom:30px;
    transform:translateX(-50%);
    display:flex;
    gap:10px;
}

.rpp-slider-dots button{
    width:12px;
    height:12px;
    border-radius:999px;
    border:0;
    background:rgba(255,255,255,.42);
    transition:width .25s ease, background .25s ease;
}

.rpp-slider-dots button.is-active{
    width:34px;
    background:var(--rpp-yellow);
}

.rpp-intro-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);
    gap:42px;
    align-items:center;
}

.rpp-intro-grid h2{
    margin:16px 0;
    max-width:850px;
    color:var(--rpp-ink);
    font-size:clamp(34px,4.5vw,64px);
    line-height:1;
    letter-spacing:-.055em;
    font-weight:950;
}

.rpp-intro-grid p{
    color:var(--rpp-muted);
    font-size:18px;
    line-height:1.75;
}

.rpp-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:28px;
}

.rpp-actions.center{
    justify-content:center;
}

.rpp-btn{
    min-height:56px;
    padding:0 22px;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    text-decoration:none;
    font-weight:900;
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}

.rpp-btn:hover{
    transform:translateY(-3px);
}

.rpp-btn.primary{
    background:linear-gradient(135deg, var(--rpp-green), var(--rpp-green-2));
    color:#fff;
    box-shadow:0 18px 44px rgba(0,143,69,.24);
}

.rpp-btn.secondary{
    background:var(--rpp-yellow);
    color:var(--rpp-ink);
    box-shadow:0 16px 34px rgba(255,204,0,.22);
}

.rpp-btn.ghost{
    background:#fff;
    border-color:var(--rpp-border);
    color:var(--rpp-ink);
}

.rpp-btn.outline-light{
    color:#fff;
    border-color:rgba(255,255,255,.25);
    background:rgba(255,255,255,.08);
}

.rpp-stat-row{
    margin-top:36px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    max-width:720px;
}

.rpp-stat-row div{
    padding:20px;
    border:1px solid var(--rpp-border);
    border-radius:22px;
    background:rgba(255,255,255,.72);
    box-shadow:var(--rpp-shadow-soft);
}

.rpp-stat-row strong{
    display:block;
    color:var(--rpp-green);
    font-size:28px;
    font-weight:950;
}

.rpp-stat-row span{
    color:var(--rpp-muted);
    font-size:13px;
    font-weight:700;
}

.rpp-hero-panel{
    position:relative;
    min-height:520px;
    border-radius:34px;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    padding:28px;
    background:
        linear-gradient(145deg, #083725, #00a75b);
    box-shadow:var(--rpp-shadow);
}

.rpp-hero-panel::before{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    border-radius:50%;
    top:-120px;
    right:-130px;
    background:rgba(255,204,0,.24);
    filter:blur(70px);
}

.rpp-hero-panel img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.72;
    mix-blend-mode:screen;
}

.rpp-hero-card{
    position:relative;
    width:100%;
    padding:24px;
    border-radius:24px;
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    backdrop-filter:blur(16px);
}

.rpp-hero-card span,
.rpp-path-card span,
.rpp-product-card span{
    display:block;
    color:var(--rpp-yellow);
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.rpp-hero-card strong{
    display:block;
    margin-top:10px;
    font-size:25px;
    line-height:1.12;
}

.rpp-section-head{
    max-width:850px;
    margin:0 auto 38px;
    text-align:center;
}

.rpp-section-head h2,
.rpp-split-head h2,
.rpp-commercial h2,
.rpp-tech-panel h2,
.rpp-final-box h2{
    font-size:clamp(34px,4.2vw,62px);
}

.rpp-section-head p{
    margin-inline:auto;
}

.rpp-path-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.rpp-path-card{
    min-height:310px;
    padding:30px;
    border-radius:26px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    color:#fff;
    text-decoration:none;
    overflow:hidden;
    position:relative;
    transition:transform .28s ease, box-shadow .28s ease;
    box-shadow:var(--rpp-shadow-soft);
}

.rpp-path-card::after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    border-radius:50%;
    right:-90px;
    top:-90px;
    background:rgba(255,255,255,.16);
    filter:blur(28px);
}

.rpp-path-card:hover,
.rpp-product-card:hover,
.rpp-brand-card:hover{
    transform:translateY(-8px);
}

.rpp-path-card.green{background:linear-gradient(145deg,#063d29,#00a65b);}
.rpp-path-card.blue{background:linear-gradient(145deg,#123d91,#27a6db);}
.rpp-path-card.yellow{background:linear-gradient(145deg,#f3b800,#ffdf44);color:var(--rpp-ink);}

.rpp-path-card h3{
    margin:18px 0 12px;
    font-size:34px;
    line-height:1;
    letter-spacing:-.04em;
}

.rpp-path-card p{
    color:rgba(255,255,255,.82);
    line-height:1.65;
}

.rpp-path-card.yellow p,
.rpp-path-card.yellow span{
    color:rgba(7,28,20,.75);
}

.rpp-path-card strong{
    margin-top:24px;
    font-size:15px;
}

.rpp-split-head{
    margin-bottom:30px;
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:24px;
}

.rpp-split-head h2{
    max-width:760px;
}

.rpp-link-arrow{
    color:var(--rpp-green);
    font-weight:950;
    white-space:nowrap;
}

.rpp-product-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}

.rpp-product-grid.wide{
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.rpp-product-card{
    padding:16px;
    border-radius:28px;
    background:#fff;
    border:1px solid var(--rpp-border);
    box-shadow:var(--rpp-shadow-soft);
    text-decoration:none;
    transition:transform .28s ease, box-shadow .28s ease;
}

.rpp-product-image{
    height:230px;
    border-radius:22px;
    overflow:hidden;
    background:linear-gradient(145deg,#e9f5ec,#fff7c6);
}

.rpp-product-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.rpp-product-card div:last-child{
    padding:22px 10px 8px;
}

.rpp-product-card span{
    color:var(--rpp-green);
}

.rpp-product-card h3{
    margin:10px 0;
    color:var(--rpp-ink);
    font-size:25px;
    line-height:1.1;
    letter-spacing:-.03em;
}

.rpp-product-card p{
    color:var(--rpp-muted);
    line-height:1.65;
}

.rpp-brand-strip{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
}

.rpp-brand-card{
    min-height:220px;
    padding:24px;
    border-radius:24px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    color:#fff;
    text-decoration:none;
    transition:transform .28s ease;
}

.rpp-brand-card small{
    color:rgba(255,255,255,.72);
    font-weight:900;
    text-transform:uppercase;
}

.rpp-brand-card strong{
    margin:20px 0 12px;
    font-size:29px;
    line-height:1.02;
    letter-spacing:-.03em;
}

.rpp-brand-card span{
    color:rgba(255,255,255,.8);
    line-height:1.55;
    font-size:14px;
}

.rpp-brand-card.tone-0{background:linear-gradient(145deg,#006936,#00a65b);}
.rpp-brand-card.tone-1{background:linear-gradient(145deg,#bb1f1f,#ef4444);}
.rpp-brand-card.tone-2{background:linear-gradient(145deg,#cc9800,#ffcc00);color:var(--rpp-ink);}
.rpp-brand-card.tone-2 small,.rpp-brand-card.tone-2 span{color:rgba(7,28,20,.74);}
.rpp-brand-card.tone-3{background:linear-gradient(145deg,#174ea6,#38bdf8);}
.rpp-brand-card.tone-4{background:linear-gradient(145deg,#101827,#26344f);}

.rpp-line-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:16px;
}

.rpp-line-card{
    min-height:250px;
    padding:26px;
    border-radius:26px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    color:#fff;
    text-decoration:none;
    position:relative;
    overflow:hidden;
    box-shadow:var(--rpp-shadow-soft);
    transition:transform .28s ease, box-shadow .28s ease;
}

.rpp-line-card::after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    right:-70px;
    top:-70px;
    border-radius:50%;
    background:rgba(255,255,255,.16);
    filter:blur(24px);
}

.rpp-line-card:hover,
.rpp-segment-card:hover{
    transform:translateY(-7px);
    box-shadow:var(--rpp-shadow);
}

.rpp-line-card small{
    color:rgba(255,255,255,.72);
    font-weight:900;
    text-transform:uppercase;
}

.rpp-line-card strong{
    margin:22px 0 12px;
    font-size:30px;
    line-height:1;
    letter-spacing:-.04em;
}

.rpp-line-card span{
    color:rgba(255,255,255,.82);
    line-height:1.6;
    font-size:14px;
}

.rpp-line-card.green{background:linear-gradient(145deg,#006936,#00a65b);}
.rpp-line-card.red{background:linear-gradient(145deg,#b91c1c,#ef4444);}
.rpp-line-card.yellow{background:linear-gradient(145deg,#c89100,#ffcc00);color:var(--rpp-ink);}
.rpp-line-card.yellow small,.rpp-line-card.yellow span{color:rgba(7,28,20,.72);}
.rpp-line-card.blue{background:linear-gradient(145deg,#1554b7,#38bdf8);}
.rpp-line-card.dark{background:linear-gradient(145deg,#111827,#26344f);}

.rpp-segment-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.rpp-segment-card{
    min-height:210px;
    padding:26px;
    border:1px solid var(--rpp-border);
    border-radius:26px;
    background:#fff;
    box-shadow:var(--rpp-shadow-soft);
    transition:transform .28s ease, box-shadow .28s ease;
}

.rpp-segment-card strong{
    display:block;
    margin-bottom:14px;
    color:var(--rpp-ink);
    font-size:24px;
    line-height:1.1;
    letter-spacing:-.035em;
}

.rpp-segment-card p{
    color:var(--rpp-muted);
    line-height:1.7;
}

.rpp-personal-panel{
    padding:40px 0;
}

.rpp-personal-box{
    padding:34px;
    border:1px solid rgba(0,143,69,.18);
    border-radius:30px;
    display:grid;
    grid-template-columns:1fr auto;
    gap:28px;
    align-items:center;
    background:
        radial-gradient(circle at 8% 20%, rgba(0,143,69,.12), transparent 30%),
        linear-gradient(135deg,#ffffff,#f2f8ef);
    box-shadow:var(--rpp-shadow-soft);
}

.rpp-personal-box h2{
    margin:14px 0 10px;
    color:var(--rpp-ink);
    font-size:clamp(28px,3.2vw,44px);
    line-height:1;
    letter-spacing:-.045em;
}

.rpp-personal-box p{
    max-width:760px;
    color:var(--rpp-muted);
    line-height:1.7;
}

.rpp-personal-actions{
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
}

.rpp-commercial{
    background:
        radial-gradient(circle at 12% 20%, rgba(255,204,0,.18), transparent 28%),
        linear-gradient(135deg,#061d16,#0b6a42);
    color:#fff;
}

.rpp-commercial-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);
    gap:42px;
    align-items:center;
}

.rpp-commercial h2,
.rpp-final-box h2{
    color:#fff;
}

.rpp-commercial p,
.rpp-final-box p{
    color:rgba(255,255,255,.78);
}

.rpp-partner-list{
    display:grid;
    gap:16px;
}

.rpp-partner-list article{
    padding:22px;
    border-radius:22px;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:16px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.13);
    backdrop-filter:blur(14px);
}

.rpp-partner-list article > span{
    width:14px;
    height:14px;
    margin-top:7px;
    border-radius:50%;
    background:var(--rpp-yellow);
    box-shadow:0 0 22px rgba(255,204,0,.5);
}

.rpp-partner-list strong{
    display:block;
    margin-bottom:6px;
    font-size:20px;
}

.rpp-partner-list p{
    margin:0;
    color:rgba(255,255,255,.72);
    line-height:1.55;
}

.rpp-tech-panel{
    padding:42px;
    border-radius:32px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:center;
    background:#fff;
    border:1px solid var(--rpp-border);
    box-shadow:var(--rpp-shadow-soft);
}

.rpp-tech-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.rpp-tech-grid div{
    padding:24px;
    border-radius:22px;
    background:var(--rpp-paper);
    border:1px solid var(--rpp-border);
}

.rpp-tech-grid strong{
    display:block;
    color:var(--rpp-green);
    font-size:30px;
    font-weight:950;
}

.rpp-tech-grid span{
    color:var(--rpp-muted);
    font-weight:700;
}

.rpp-final{
    padding:30px 0 96px;
}

.rpp-final-box{
    padding:68px 34px;
    border-radius:34px;
    text-align:center;
    background:
        radial-gradient(circle at 20% 10%, rgba(255,204,0,.22), transparent 30%),
        linear-gradient(135deg,#061d16,#0b6a42);
    box-shadow:var(--rpp-shadow);
}

.rpp-final-box p{
    margin-inline:auto;
}

.rpp-reveal{
    opacity:0;
    transform:translateY(24px);
    transition:opacity .65s ease, transform .65s ease;
}

.rpp-reveal.is-visible{
    opacity:1;
    transform:none;
}

@media(max-width:1100px){
    .rpp-intro-grid,
    .rpp-commercial-grid,
    .rpp-tech-panel{
        grid-template-columns:1fr;
    }

    .rpp-hero{
        min-height:auto;
    }

    .rpp-brand-strip{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .rpp-product-grid.wide{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .rpp-line-grid,
    .rpp-segment-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .rpp-personal-box{
        grid-template-columns:1fr;
    }
}

@media(max-width:820px){
    .rpp-section{
        padding:58px 0;
    }

    .rpp-hero{
        padding:48px 0 62px;
    }

    .rpp-hero-copy h1{
        font-size:42px;
        letter-spacing:-.045em;
    }

    .rpp-hero-copy p,
    .rpp-section-head p,
    .rpp-commercial p,
    .rpp-tech-panel p,
    .rpp-final-box p{
        font-size:16px;
    }

    .rpp-path-grid,
    .rpp-product-grid,
    .rpp-product-grid.wide,
    .rpp-line-grid,
    .rpp-segment-grid,
    .rpp-stat-row,
    .rpp-tech-grid{
        grid-template-columns:1fr;
    }

    .rpp-split-head{
        align-items:start;
        flex-direction:column;
    }

    .rpp-hero-panel{
        min-height:360px;
        border-radius:26px;
    }

    .rpp-tech-panel,
    .rpp-final-box{
        padding:28px;
        border-radius:26px;
    }
}

/* =========================================================
   PRODUTOS CLEAN - CATALOGO
   ========================================================= */

.products-page .catalog-layout {
    align-items:start;
}

.products-page .filters-panel,
.products-page .catalog-header,
.products-page .line-block,
.products-page .product-card {
    border:1px solid rgba(7,28,20,.10);
    background:#fff;
    box-shadow:0 14px 34px rgba(7,28,20,.07);
}

.products-page .filters-panel {
    position:sticky;
    top:96px;
    border-radius:24px;
}

.products-page .product-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.products-page .product-card {
    overflow:hidden;
    min-height:100%;
    border-radius:24px;
    display:flex;
    flex-direction:column;
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.products-page .product-card:hover {
    transform:translateY(-5px);
    border-color:rgba(0,143,69,.26);
    box-shadow:0 20px 48px rgba(7,28,20,.12);
}

.products-page .product-image {
    height:230px;
    padding:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#f1f8ee,#fff7c9);
}

.products-page .product-main-image {
    width:100%;
    height:100%;
    object-fit:contain;
}

.products-page .product-info {
    min-height:320px;
    padding:22px;
    display:flex;
    flex-direction:column;
}

.products-page .product-tags {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:12px;
}

.products-page .product-tags span {
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    background:rgba(0,143,69,.09);
    color:#008f45;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}

.products-page .product-info h4 {
    margin:0 0 8px;
    color:#071c14;
    font-size:22px;
    line-height:1.12;
    letter-spacing:-.025em;
}

.products-page .product-info small {
    margin-bottom:10px;
    color:#7a8a82;
    font-weight:800;
}

.products-page .product-info p {
    color:#60726a;
    line-height:1.62;
    font-size:14px;
}

.products-page .weights {
    margin-top:14px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.products-page .weights span {
    padding:7px 9px;
    border-radius:10px;
    background:#f4f8f1;
    color:#071c14;
    font-size:12px;
    font-weight:900;
}

.products-page .product-bottom-info {
    margin-top:auto;
    padding-top:16px;
}

.products-page .product-actions {
    margin-top:16px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.products-page .product-actions a {
    min-height:46px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    text-decoration:none;
}

.products-page .product-actions .details {
    background:#071c14;
    color:#fff;
}

.products-page .product-actions .whatsapp {
    background:#ffcc00;
    color:#071c14;
}

@media(max-width:1100px){
    .products-page .product-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:760px){
    .products-page .catalog-layout,
    .products-page .product-grid {
        grid-template-columns:1fr;
    }

    .products-page .filters-panel {
        position:relative;
        top:auto;
    }

    .products-page .product-actions {
        grid-template-columns:1fr;
    }
}

/* =========================================================
   HEADER CLEAN TECH - RACOES PICA PAU
   ========================================================= */

:root {
    --header-clean-height:82px;
}

.site-header {
    height:var(--header-clean-height);
    background:rgba(255,255,255,.82);
    border-bottom:1px solid rgba(7,28,20,.08);
    box-shadow:0 12px 38px rgba(7,28,20,.07);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

.site-header.scrolled {
    height:72px;
    background:rgba(255,255,255,.94);
    box-shadow:0 16px 46px rgba(7,28,20,.11);
}

.header-blur {
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg, rgba(0,143,69,.08), transparent 34%),
        linear-gradient(270deg, rgba(255,204,0,.10), transparent 30%);
}

.header-wrapper,
.site-header.scrolled .header-wrapper {
    height:var(--header-clean-height);
    gap:20px;
}

.site-header.scrolled .header-wrapper {
    height:72px;
}

.logo-area {
    min-width:168px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
}

.logo-image {
    display:flex;
    align-items:center;
}

.logo-area img,
.header-logo {
    max-height:50px;
    width:auto;
    object-fit:contain;
}

.site-header.scrolled .logo-area img,
.site-header.scrolled .header-logo {
    max-height:44px;
}

.logo-texts {
    display:flex;
    flex-direction:column;
}

.logo-only-slogan,
.logo-area span {
    margin:0;
    color:#53645c;
    font-size:10px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1.2;
    text-transform:uppercase;
    text-align:left;
}

.main-menu {
    min-width:0;
    padding:6px;
    gap:4px;
    border:1px solid rgba(7,28,20,.08);
    border-radius:999px;
    background:rgba(255,255,255,.62);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}

.main-menu a {
    min-height:36px;
    padding:0 13px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    color:#17362b;
    font-size:12px;
    font-weight:900;
    letter-spacing:0;
    transition:background .22s ease, color .22s ease, transform .22s ease;
}

.main-menu a::after {
    display:none;
}

.main-menu a:hover,
.main-menu a.active {
    color:#062719;
    background:rgba(255,204,0,.92);
    transform:translateY(-1px);
}

.header-actions {
    gap:8px;
}

.header-whatsapp,
.mobile-whatsapp {
    display:none !important;
}

.header-search-btn,
.header-search,
.mobile-toggle,
.menu-mobile-btn {
    width:44px;
    height:44px;
    border:1px solid rgba(7,28,20,.10);
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.72);
    color:#062719;
    box-shadow:0 10px 26px rgba(7,28,20,.07);
    transition:transform .22s ease, background .22s ease, box-shadow .22s ease;
}

.header-search-btn:hover,
.header-search:hover,
.mobile-toggle:hover,
.menu-mobile-btn:hover {
    transform:translateY(-2px);
    background:var(--rpp-yellow);
    box-shadow:0 16px 34px rgba(7,28,20,.12);
}

.header-search-btn svg {
    width:21px;
    height:21px;
}

.mobile-toggle {
    display:none;
    flex-direction:column;
    gap:5px;
}

.mobile-toggle span {
    width:18px;
    height:2px;
    border-radius:999px;
    background:currentColor;
}

@media(max-width:1280px) {
    .main-menu a {
        padding:0 10px;
        font-size:11px;
    }
}

@media(max-width:1100px) {
    .main-menu {
        display:none;
    }

    .mobile-toggle,
    .menu-mobile-btn {
        display:inline-flex;
    }

    .site-header,
    .site-header.scrolled,
    .header-wrapper,
    .site-header.scrolled .header-wrapper {
        height:74px;
    }

    .logo-area img,
    .header-logo {
        max-height:44px;
    }
}

@media(max-width:560px) {
    .logo-area {
        min-width:auto;
    }

    .logo-only-slogan {
        display:none;
    }

    .header-search-btn,
    .header-search,
    .mobile-toggle,
    .menu-mobile-btn {
        width:42px;
        height:42px;
        border-radius:14px;
    }
}

/* =========================================================
   HOME PRO 2026 - UX COMERCIAL RACOES PICA PAU
   ========================================================= */

.home-pro {
    --home-green:#008f45;
    --home-green-dark:#062719;
    --home-yellow:#ffcc00;
    --home-black:#071c14;
    --home-muted:#60726a;
    --home-soft:#f4f8f1;
    --home-border:rgba(7,28,20,.12);
    --home-shadow:0 18px 50px rgba(7,28,20,.10);
    background:var(--home-soft);
    color:var(--home-black);
    overflow:hidden;
}

.profile-switch {
    position:relative;
    z-index:4;
    padding:18px 0 8px;
    background:linear-gradient(180deg,#fff,var(--home-soft));
}

.home-banner-clean {
    position:relative;
    background:#061d16;
}

.home-banner-slider {
    position:relative;
    min-height:420px;
    overflow:hidden;
}

.home-banner-slide {
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    transition:opacity .6s ease, visibility .6s ease;
}

.home-banner-slide.is-active {
    opacity:1;
    visibility:visible;
}

.home-banner-media {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.home-banner-overlay {
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(6,29,22,.92), rgba(6,29,22,.60) 54%, rgba(6,29,22,.28)),
        radial-gradient(circle at 85% 15%, rgba(255,204,0,.18), transparent 28%);
}

.home-banner-content {
    position:relative;
    z-index:2;
    min-height:420px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    padding-top:34px;
    padding-bottom:34px;
}

.home-banner-content span {
    display:inline-flex;
    min-height:32px;
    padding:0 12px;
    align-items:center;
    border-radius:999px;
    background:rgba(255,204,0,.16);
    color:var(--home-yellow);
    font-size:12px;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.home-banner-content h2 {
    max-width:760px;
    margin:14px 0 12px;
    color:#fff;
    font-size:clamp(34px,5vw,66px);
    line-height:.98;
    letter-spacing:-.052em;
    font-weight:1000;
}

.home-banner-content p {
    max-width:680px;
    margin-bottom:24px;
    color:rgba(255,255,255,.78);
    font-size:17px;
    line-height:1.65;
}

.home-banner-dots {
    position:absolute;
    z-index:4;
    left:50%;
    bottom:18px;
    transform:translateX(-50%);
    display:flex;
    gap:8px;
}

.home-banner-dots button {
    width:10px;
    height:10px;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.44);
    transition:width .22s ease, background .22s ease;
}

.home-banner-dots button.is-active {
    width:30px;
    background:var(--home-yellow);
}

.profile-switch__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.profile-option {
    min-height:76px;
    padding:14px 18px;
    border:1px solid var(--home-border);
    border-radius:18px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:5px;
    background:#fff;
    color:var(--home-black);
    box-shadow:0 10px 28px rgba(7,28,20,.05);
    cursor:pointer;
    transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.profile-option span {
    font-size:17px;
    font-weight:950;
    line-height:1.1;
}

.profile-option small {
    color:var(--home-muted);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.profile-option:hover,
.profile-option.active {
    transform:translateY(-3px);
    border-color:rgba(0,143,69,.35);
    background:linear-gradient(135deg,#fff,#eff8ec);
    box-shadow:var(--home-shadow);
}

.profile-option.active span {
    color:var(--home-green);
}

.home-hero-pro {
    padding:38px 0 58px;
    background:
        radial-gradient(circle at 80% 10%, rgba(255,204,0,.17), transparent 24%),
        radial-gradient(circle at 16% 0%, rgba(0,143,69,.12), transparent 28%),
        linear-gradient(180deg,var(--home-soft),#fff);
}

.hero-pro-grid {
    display:grid;
    grid-template-columns:minmax(0,1.04fr) minmax(340px,.78fr);
    gap:34px;
    align-items:center;
}

.home-kicker,
.section-heading-pro span,
.final-pro-box > span {
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:0 13px;
    border-radius:999px;
    border:1px solid rgba(0,143,69,.18);
    background:rgba(0,143,69,.08);
    color:var(--home-green);
    font-size:12px;
    font-weight:950;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.home-kicker.light {
    color:var(--home-yellow);
    border-color:rgba(255,255,255,.22);
    background:rgba(255,255,255,.10);
}

.hero-pro-copy h1 {
    max-width:840px;
    margin:16px 0 14px;
    color:var(--home-black);
    font-size:clamp(38px,5.6vw,74px);
    line-height:.96;
    letter-spacing:-.055em;
    font-weight:1000;
}

.hero-pro-copy p {
    max-width:700px;
    color:var(--home-muted);
    font-size:18px;
    line-height:1.65;
}

.hero-pro-actions {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:26px;
}

.hero-pro-actions.center {
    justify-content:center;
}

.home-btn {
    min-height:54px;
    padding:0 22px;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    text-decoration:none;
    font-size:15px;
    font-weight:950;
    transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
}

.home-btn:hover {
    transform:translateY(-3px);
}

.home-btn.primary {
    background:linear-gradient(135deg,var(--home-green),#00b969);
    color:#fff;
    box-shadow:0 18px 42px rgba(0,143,69,.24);
}

.home-btn.secondary {
    background:var(--home-yellow);
    color:var(--home-black);
    box-shadow:0 16px 34px rgba(255,204,0,.22);
}

.hero-proof-row {
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    max-width:650px;
}

.hero-proof-row div {
    min-height:82px;
    padding:16px;
    border:1px solid var(--home-border);
    border-radius:18px;
    background:rgba(255,255,255,.74);
    box-shadow:0 10px 28px rgba(7,28,20,.05);
}

.hero-proof-row strong {
    display:block;
    color:var(--home-green);
    font-size:22px;
    font-weight:950;
}

.hero-proof-row span {
    color:var(--home-muted);
    font-size:13px;
    font-weight:700;
}

.hero-feature-panel {
    display:grid;
    gap:14px;
}

.hero-product-card,
.ai-card {
    border:1px solid var(--home-border);
    border-radius:26px;
    background:#fff;
    box-shadow:var(--home-shadow);
}

.hero-product-card {
    padding:14px;
    display:grid;
    gap:16px;
    text-decoration:none;
}

.hero-product-image {
    height:280px;
    border-radius:20px;
    overflow:hidden;
    background:linear-gradient(135deg,#edf7ea,#fff5be);
}

.hero-product-image img {
    width:100%;
    height:100%;
    object-fit:cover;
}

.hero-product-card div:last-child {
    padding:0 8px 10px;
}

.hero-product-card span,
.product-pro-card span {
    color:var(--home-green);
    font-size:12px;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.hero-product-card strong {
    display:block;
    margin:8px 0;
    color:var(--home-black);
    font-size:28px;
    line-height:1.05;
    letter-spacing:-.035em;
}

.hero-product-card p,
.ai-card p {
    color:var(--home-muted);
    line-height:1.6;
}

.ai-card {
    padding:22px;
    background:
        radial-gradient(circle at 100% 0%, rgba(255,204,0,.18), transparent 30%),
        linear-gradient(135deg,#062719,#0d6a44);
    color:#fff;
}

.ai-card span {
    color:var(--home-yellow);
    font-size:12px;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.ai-card strong {
    display:block;
    margin:9px 0;
    font-size:22px;
    line-height:1.15;
}

.ai-card p {
    color:rgba(255,255,255,.76);
}

.home-section-pro {
    padding:58px 0;
}

.home-section-pro.soft {
    background:linear-gradient(180deg,#fff,var(--home-soft));
}

.home-section-pro.dark {
    background:
        radial-gradient(circle at 16% 20%, rgba(255,204,0,.16), transparent 25%),
        linear-gradient(135deg,#061d16,#0b6a42);
    color:#fff;
}

.section-heading-pro {
    max-width:850px;
    margin:0 auto 28px;
    text-align:center;
}

.section-heading-pro.split {
    max-width:none;
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:22px;
    text-align:left;
}

.section-heading-pro h2,
.commercial-pro-grid h2,
.final-pro-box h2 {
    margin:12px 0;
    color:var(--home-black);
    font-size:clamp(30px,4vw,54px);
    line-height:1.02;
    letter-spacing:-.045em;
    font-weight:950;
}

.home-section-pro.dark h2,
.home-section-pro.dark p {
    color:#fff;
}

.section-heading-pro p,
.commercial-pro-grid p,
.final-pro-box p {
    color:var(--home-muted);
    font-size:17px;
    line-height:1.7;
}

.home-section-pro.dark p {
    color:rgba(255,255,255,.76);
}

.text-link-pro {
    color:var(--home-green);
    font-weight:950;
    white-space:nowrap;
}

.brand-clean-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
}

.brand-clean-card {
    min-height:230px;
    padding:24px;
    border-radius:24px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    text-decoration:none;
    color:#fff;
    box-shadow:0 14px 36px rgba(7,28,20,.10);
    transition:transform .22s ease, box-shadow .22s ease;
}

.brand-clean-card:hover,
.product-pro-card:hover,
.trust-pro-card:hover,
.content-pro-card:hover {
    transform:translateY(-6px);
    box-shadow:var(--home-shadow);
}

.brand-clean-card small {
    color:rgba(255,255,255,.76);
    font-weight:950;
    text-transform:uppercase;
}

.brand-clean-card strong {
    margin:18px 0 10px;
    font-size:28px;
    line-height:1;
    letter-spacing:-.035em;
}

.brand-clean-card p {
    color:rgba(255,255,255,.82);
    line-height:1.55;
    font-size:14px;
}

.brand-clean-card.green{background:linear-gradient(145deg,#006936,#00a65b);}
.brand-clean-card.red{background:linear-gradient(145deg,#b91c1c,#ef4444);}
.brand-clean-card.yellow{background:linear-gradient(145deg,#c89100,#ffcc00);color:var(--home-black);}
.brand-clean-card.yellow small,.brand-clean-card.yellow p{color:rgba(7,28,20,.72);}
.brand-clean-card.blue{background:linear-gradient(145deg,#1554b7,#38bdf8);}
.brand-clean-card.dark{background:linear-gradient(145deg,#111827,#26344f);}

.product-pro-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.product-pro-card,
.trust-pro-card,
.content-pro-card {
    border:1px solid var(--home-border);
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 34px rgba(7,28,20,.07);
    transition:transform .22s ease, box-shadow .22s ease;
}

.product-pro-card {
    padding:14px;
    display:grid;
    text-decoration:none;
}

.product-pro-image {
    height:210px;
    border-radius:18px;
    overflow:hidden;
    background:#eef6ec;
}

.product-pro-image img {
    width:100%;
    height:100%;
    object-fit:cover;
}

.product-pro-card div:last-child {
    padding:18px 8px 8px;
}

.product-pro-card h3 {
    margin:8px 0;
    color:var(--home-black);
    font-size:24px;
    line-height:1.1;
    letter-spacing:-.035em;
}

.product-pro-card p {
    color:var(--home-muted);
    line-height:1.6;
}

.trust-pro-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
}

.trust-pro-card {
    min-height:190px;
    padding:22px;
}

.trust-pro-card strong {
    display:block;
    margin-bottom:10px;
    color:var(--home-black);
    font-size:20px;
    line-height:1.15;
}

.trust-pro-card p {
    color:var(--home-muted);
    line-height:1.6;
    font-size:14px;
}

.commercial-pro-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);
    gap:34px;
    align-items:center;
}

.partner-pro-list {
    display:grid;
    gap:12px;
}

.partner-pro-list article {
    padding:20px;
    border-radius:20px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.14);
}

.partner-pro-list strong {
    display:block;
    margin-bottom:6px;
    color:#fff;
    font-size:19px;
}

.partner-pro-list span {
    color:rgba(255,255,255,.76);
    line-height:1.55;
}

.content-pro-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}

.content-pro-card {
    min-height:250px;
    padding:24px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    text-decoration:none;
}

.content-pro-card small {
    color:var(--home-green);
    font-weight:950;
    text-transform:uppercase;
}

.content-pro-card h3 {
    margin:16px 0 10px;
    color:var(--home-black);
    font-size:23px;
    line-height:1.1;
    letter-spacing:-.03em;
}

.content-pro-card p {
    color:var(--home-muted);
    line-height:1.6;
}

.content-pro-card > span {
    margin-top:18px;
    color:var(--home-green);
    font-weight:950;
}

.home-final-pro {
    padding:24px 0 76px;
    background:#fff;
}

.final-pro-box {
    padding:54px 30px;
    border-radius:30px;
    text-align:center;
    background:
        radial-gradient(circle at 18% 20%, rgba(255,204,0,.18), transparent 26%),
        linear-gradient(135deg,#062719,#0b6a42);
    color:#fff;
    box-shadow:var(--home-shadow);
}

.final-pro-box h2 {
    color:#fff;
}

.final-pro-box p {
    max-width:760px;
    margin:0 auto;
    color:rgba(255,255,255,.78);
}

@media(max-width:1180px) {
    .brand-clean-grid,
    .trust-pro-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .content-pro-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:920px) {
    .hero-pro-grid,
    .commercial-pro-grid {
        grid-template-columns:1fr;
    }

    .profile-switch__grid {
        grid-template-columns:1fr;
    }

    .home-hero-pro {
        padding-top:28px;
    }

    .section-heading-pro.split {
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:700px) {
    .home-banner-slider,
    .home-banner-content {
        min-height:360px;
    }

    .home-banner-content h2 {
        font-size:34px;
    }

    .home-banner-content p {
        font-size:15px;
    }

    .profile-switch {
        padding-top:12px;
    }

    .profile-option {
        min-height:66px;
        border-radius:16px;
    }

    .hero-pro-copy h1 {
        font-size:38px;
    }

    .hero-pro-copy p,
    .section-heading-pro p,
    .commercial-pro-grid p,
    .final-pro-box p {
        font-size:15px;
    }

    .hero-pro-actions,
    .hero-pro-actions.center {
        align-items:stretch;
        flex-direction:column;
    }

    .home-btn {
        width:100%;
    }

    .hero-proof-row,
    .product-pro-grid,
    .brand-clean-grid,
    .trust-pro-grid,
    .content-pro-grid {
        grid-template-columns:1fr;
    }

    .hero-product-image,
    .product-pro-image {
        height:210px;
    }

    .home-section-pro {
        padding:44px 0;
    }

    .final-pro-box {
        padding:34px 22px;
    }
}

@media(max-width:560px){
    .rpp-actions,
    .rpp-actions.center{
        align-items:stretch;
        flex-direction:column;
    }

    .rpp-btn{
        width:100%;
    }

    .rpp-brand-strip{
        grid-template-columns:1fr;
    }
}

/* =========================================================
   RAÇÕES PICA PAU — CSS PREMIUM ORGANIZADO
   Versão: 2026
   Objetivo: visual moderno, responsivo, limpo e sem duplicidades
   ========================================================= */

/* =========================================================
   01. VARIÁVEIS / DESIGN SYSTEM
   ========================================================= */

:root{
    --color-dark:#0f172a;
    --color-dark-2:#111827;
    --color-dark-3:#020617;
    --color-blue:#2563eb;
    --color-blue-2:#1d4ed8;
    --color-green:#16a34a;
    --color-green-2:#15803d;
    --color-yellow:#facc15;
    --color-yellow-2:#f59e0b;
    --color-red:#ef4444;
    --color-white:#ffffff;
    --color-light:#f5f7fb;
    --color-soft:#f8fafc;
    --color-muted:#64748b;
    --color-border:#e5e7eb;
    --color-border-soft:#eef2f7;

    --font-main:'Poppins',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

    --container:1400px;
    --header-height:100px;

    --radius-xs:12px;
    --radius-sm:16px;
    --radius-md:24px;
    --radius-lg:34px;
    --radius-xl:44px;
    --radius-pill:999px;

    --shadow-xs:0 8px 20px rgba(15,23,42,.04);
    --shadow-sm:0 15px 35px rgba(15,23,42,.06);
    --shadow-md:0 22px 55px rgba(15,23,42,.10);
    --shadow-lg:0 34px 85px rgba(15,23,42,.16);

    --transition-fast:.2s ease;
    --transition:.32s ease;
    --transition-slow:.55s ease;
}

/* =========================================================
   02. RESET / BASE
   ========================================================= */

*,*::before,*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
    -webkit-text-size-adjust:100%;
}

body{
    min-height:100vh;
    font-family:var(--font-main);
    background:var(--color-light);
    color:var(--color-dark);
    overflow-x:hidden;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}

body.menu-open{
    overflow:hidden;
}

img,video,svg{
    max-width:100%;
    display:block;
}

a{
    color:inherit;
    text-decoration:none;
}

ul,ol{
    list-style:none;
}

button,input,textarea,select{
    font:inherit;
}

button{
    cursor:pointer;
}

::selection{
    background:var(--color-yellow);
    color:var(--color-dark-2);
}

.container{
    width:100%;
    max-width:var(--container);
    margin-inline:auto;
    padding-inline:30px;
}

main{
    padding-top:var(--header-height);
}

/* =========================================================
   03. UTILITÁRIOS
   ========================================================= */

.text-gradient{
    background:linear-gradient(135deg,var(--color-dark-2),var(--color-blue));
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.section{
    position:relative;
    padding:110px 0;
}

.section-soft{
    background:var(--color-soft);
}

.section-dark{
    background:linear-gradient(135deg,var(--color-dark-3),var(--color-dark),var(--color-dark-2));
    color:var(--color-white);
}

.section-header{
    max-width:960px;
    margin:0 auto 64px;
    text-align:center;
}

.section-tag,
.banner-tag,
.eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:var(--radius-pill);
    background:var(--color-yellow);
    color:var(--color-dark-2);
    font-size:13px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.section-tag,
.eyebrow{
    min-height:40px;
    padding:0 18px;
    margin-bottom:22px;
}

.section-header h2{
    font-size:clamp(34px,4vw,58px);
    line-height:1.06;
    font-weight:900;
    letter-spacing:-.04em;
    color:var(--color-dark);
    margin-bottom:20px;
}

.section-dark .section-header h2{
    color:var(--color-white);
}

.section-header p{
    max-width:850px;
    margin:0 auto;
    font-size:clamp(16px,1.5vw,20px);
    line-height:1.8;
    color:var(--color-muted);
}

.section-dark .section-header p{
    color:#cbd5e1;
}

/* =========================================================
   04. BOTÕES
   ========================================================= */

.btn-banner,
.btn-banner-outline,
.btn-cta,
.btn-dark,
.btn-produto,
.btn-produto-whatsapp,
.btn-whatsapp,
.header-whatsapp{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    padding:0 28px;
    border:0;
    border-radius:var(--radius-sm);
    font-size:15px;
    font-weight:900;
    line-height:1;
    transition:transform var(--transition),background var(--transition),color var(--transition),box-shadow var(--transition);
}

.btn-banner,
.btn-cta{
    background:var(--color-yellow);
    color:var(--color-dark-2);
    box-shadow:0 16px 34px rgba(250,204,21,.22);
}

.btn-banner:hover,
.btn-cta:hover{
    transform:translateY(-4px);
    background:var(--color-dark-2);
    color:var(--color-white);
    box-shadow:0 22px 45px rgba(15,23,42,.20);
}

.btn-dark,
.btn-produto{
    background:var(--color-dark-2);
    color:var(--color-white);
}

.btn-dark:hover,
.btn-produto:hover{
    transform:translateY(-3px);
    background:var(--color-yellow);
    color:var(--color-dark-2);
}

.btn-banner-outline{
    background:rgba(255,255,255,.10);
    color:var(--color-white);
    border:1px solid rgba(255,255,255,.25);
    backdrop-filter:blur(12px);
}

.btn-banner-outline:hover{
    transform:translateY(-4px);
    background:var(--color-white);
    color:var(--color-dark-2);
}

.btn-produto-whatsapp,
.btn-whatsapp,
.header-whatsapp{
    background:var(--color-green);
    color:var(--color-white);
    box-shadow:0 14px 30px rgba(22,163,74,.22);
}

.btn-produto-whatsapp:hover,
.btn-whatsapp:hover,
.header-whatsapp:hover{
    transform:translateY(-3px);
    background:var(--color-green-2);
    color:var(--color-white);
    box-shadow:0 22px 45px rgba(22,163,74,.28);
}

/* =========================================================
   05. HEADER / MENU
   ========================================================= */

.site-header{
    position:fixed;
    inset:0 0 auto 0;
    z-index:999;
    width:100%;
    height:var(--header-height);
    background:rgba(255,255,255,.96);
    border-bottom:1px solid rgba(15,23,42,.06);
    backdrop-filter:blur(18px);
    transition:height var(--transition),box-shadow var(--transition),background var(--transition);
}

.site-header.scrolled{
    height:84px;
    background:rgba(255,255,255,.98);
    box-shadow:0 12px 35px rgba(15,23,42,.08);
}

.header-wrapper{
    height:var(--header-height);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    transition:height var(--transition);
}

.site-header.scrolled .header-wrapper{
    height:84px;
}

.logo-area{
    display:flex;
    flex-direction:column;
    justify-content:center;
    flex-shrink:0;
    transition:transform var(--transition);
}

.logo-area:hover{
    transform:translateY(-2px);
}

.logo-area img{
    width:auto;
    max-height:64px;
    object-fit:contain;
}

.logo-area h1{
    font-size:34px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
    background:linear-gradient(135deg,var(--color-dark-2),var(--color-blue));
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.site-header.scrolled .logo-area h1{
    font-size:30px;
}

.logo-area span{
    margin-top:8px;
    color:var(--color-muted);
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.main-menu{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:26px;
}

.main-menu a{
    position:relative;
    color:var(--color-dark);
    font-size:13px;
    font-weight:900;
    letter-spacing:.03em;
    white-space:nowrap;
    transition:color var(--transition);
}

.main-menu a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-10px;
    width:0;
    height:3px;
    border-radius:var(--radius-pill);
    background:var(--color-yellow);
    transition:width var(--transition);
}

.main-menu a:hover,
.main-menu a.active{
    color:var(--color-blue);
}

.main-menu a:hover::after,
.main-menu a.active::after{
    width:100%;
}

.header-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
}

.header-search,
.menu-mobile-btn{
    width:48px;
    height:48px;
    border:0;
    border-radius:14px;
    background:#f3f4f6;
    color:var(--color-dark-2);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    transition:var(--transition);
}

.header-search:hover,
.menu-mobile-btn:hover{
    background:var(--color-yellow);
    transform:translateY(-2px);
}

.menu-mobile-btn{
    display:none;
}

/* =========================================================
   06. MENU MOBILE
   ========================================================= */

.mobile-menu{
    position:fixed;
    inset:0;
    z-index:99999;
    opacity:0;
    visibility:hidden;
    transition:.35s ease;
}

.mobile-menu.active{
    opacity:1;
    visibility:visible;
}

.mobile-menu-overlay{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.78);
    backdrop-filter:blur(10px);
}

.mobile-menu-content{
    position:absolute;
    top:0;
    right:-100%;
    width:360px;
    max-width:100%;
    height:100%;
    padding:92px 32px 34px;
    background:var(--color-white);
    overflow-y:auto;
    transition:right .4s ease;
    box-shadow:-20px 0 60px rgba(15,23,42,.20);
}

.mobile-menu.active .mobile-menu-content{
    right:0;
}

.mobile-menu-close{
    position:absolute;
    top:24px;
    right:24px;
    width:52px;
    height:52px;
    border:0;
    border-radius:16px;
    background:#f3f4f6;
    color:var(--color-dark-2);
    font-size:34px;
}

.mobile-nav{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.mobile-nav a{
    min-height:58px;
    display:flex;
    align-items:center;
    padding:0 22px;
    border-radius:18px;
    background:#f8fafc;
    color:var(--color-dark-2);
    font-weight:900;
    transition:var(--transition);
}

.mobile-nav a:hover,
.mobile-nav a.active{
    background:var(--color-yellow);
}

/* =========================================================
   07. BANNER HOME
   ========================================================= */

.hero-banner{
    position:relative;
    width:100%;
    overflow:hidden;
}

.banner-item{
    position:relative;
    width:100%;
    min-height:620px;
    display:flex;
    align-items:center;
    padding:90px 0;
    overflow:hidden;
    background-size:cover;
    background-position:center;
}

.banner-default{
    background:radial-gradient(circle at 80% 20%,rgba(250,204,21,.18),transparent 32%),linear-gradient(135deg,var(--color-dark),var(--color-dark-2),#1e293b);
}

.banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(15,23,42,.94),rgba(15,23,42,.62),rgba(15,23,42,.18));
}

.banner-particles{
    position:absolute;
    inset:0;
    overflow:hidden;
    opacity:.28;
}

.banner-particles::before,
.banner-particles::after{
    content:'';
    position:absolute;
    width:520px;
    height:520px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(250,204,21,.36),transparent 70%);
    animation:floatParticle 12s infinite linear;
}

.banner-particles::before{top:-140px;left:-140px;}
.banner-particles::after{right:-150px;bottom:-190px;animation-delay:6s;}

.banner-content{
    position:relative;
    z-index:2;
    max-width:780px;
    color:var(--color-white);
    animation:bannerFade .9s ease both;
}

.banner-tag{
    min-height:46px;
    padding:0 22px;
    margin-bottom:25px;
}

.banner-content h1,
.banner-content h2{
    font-size:clamp(42px,6vw,76px);
    line-height:1.01;
    margin-bottom:24px;
    font-weight:900;
    letter-spacing:-.06em;
}

.banner-content p{
    max-width:720px;
    margin-bottom:38px;
    color:#e5e7eb;
    font-size:clamp(17px,1.8vw,21px);
    line-height:1.8;
}

.banner-actions{
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
}

@keyframes floatParticle{
    0%,100%{transform:translateY(0) rotate(0deg);}
    50%{transform:translateY(32px) rotate(180deg);}
}

@keyframes bannerFade{
    from{opacity:0;transform:translateY(40px);}
    to{opacity:1;transform:translateY(0);}
}

/* =========================================================
   08. PILARES / CARDS GERAIS
   ========================================================= */

.pilares-section{
    position:relative;
    z-index:10;
    margin-top:-90px;
}

.pilares-grid,
.produtos-grid,
.linhas-grid,
.marcas-grid,
.diferenciais-grid,
.processo-grid,
.blog-grid{
    display:grid;
    gap:30px;
}

.pilares-grid,
.linhas-grid,
.marcas-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.pilar-card,
.diferencial-card,
.processo-card,
.blog-card,
.marca-card{
    background:var(--color-white);
    border:1px solid var(--color-border-soft);
    box-shadow:var(--shadow-sm);
    transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);
}

.pilar-card:hover,
.diferencial-card:hover,
.processo-card:hover,
.blog-card:hover,
.marca-card:hover{
    transform:translateY(-10px);
    box-shadow:var(--shadow-lg);
    border-color:rgba(37,99,235,.15);
}

.pilar-card{
    min-height:280px;
    padding:38px;
    border-radius:34px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(14px);
}

.pilar-icon{
    width:68px;
    height:68px;
    border-radius:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    font-size:28px;
    background:linear-gradient(135deg,var(--color-yellow),var(--color-blue));
    color:var(--color-white);
}

.pilar-card h3{
    margin-bottom:16px;
    color:var(--color-dark);
    font-size:28px;
    line-height:1.12;
    font-weight:900;
}

.pilar-card p{
    color:var(--color-muted);
    line-height:1.8;
}

/* =========================================================
   09. PRODUTOS — CARD PADRÃO E HOME PREMIUM
   ========================================================= */

.produtos-home .container{
    max-width:100%;
    padding-inline:30px;
}

.produtos-grid-home{
    display:flex;
    gap:26px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    padding:10px 0 36px;
    scrollbar-width:thin;
    scrollbar-color:var(--color-dark) #f1f5f9;
}

.produtos-grid-home::-webkit-scrollbar{height:10px;}
.produtos-grid-home::-webkit-scrollbar-track{background:#f1f5f9;border-radius:var(--radius-pill);}
.produtos-grid-home::-webkit-scrollbar-thumb{background:var(--color-dark);border-radius:var(--radius-pill);}

.produto-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:var(--color-white);
    border:1px solid var(--color-border-soft);
    border-radius:32px;
    box-shadow:0 4px 10px rgba(15,23,42,.025),0 18px 45px rgba(15,23,42,.06);
    transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);
}

.produto-card:hover{
    transform:translateY(-9px);
    border-color:rgba(37,99,235,.15);
    box-shadow:0 18px 36px rgba(15,23,42,.08),0 32px 70px rgba(15,23,42,.14);
}

.produto-card::before{
    content:'';
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(135deg,rgba(250,204,21,.08),rgba(37,99,235,.06),transparent 45%);
    opacity:0;
    transition:opacity var(--transition);
}

.produto-card:hover::before{
    opacity:1;
}

.produtos-grid-home .produto-card{
    flex:0 0 300px;
    width:300px;
    max-width:300px;
    min-width:300px;
    scroll-snap-align:start;
}

.produto-top,
.produto-top-tags{
    position:absolute;
    top:18px;
    left:18px;
    z-index:5;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.produto-badge,
.tag-destaque,
.tag-lancamento{
    min-height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border-radius:var(--radius-pill);
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
    backdrop-filter:blur(10px);
    box-shadow:0 8px 18px rgba(15,23,42,.10);
}

.badge-destaque,
.tag-destaque{
    background:var(--color-yellow);
    color:var(--color-dark-2);
}

.badge-lancamento,
.tag-lancamento{
    background:var(--color-blue);
    color:var(--color-white);
}

.produto-img,
.produto-image-area{
    position:relative;
    height:230px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
}

.produto-img::after,
.produto-image-area::after{
    content:'';
    position:absolute;
    left:22px;
    right:22px;
    bottom:0;
    height:1px;
    background:#edf2f7;
}

.produto-img img,
.produto-image{
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .45s ease;
}

.produto-card:hover .produto-img img,
.produto-card:hover .produto-image{
    transform:scale(1.06);
}

.produto-info,
.produto-content{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:22px;
}

.produto-codigo{
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:0 13px;
    margin-bottom:13px;
    border-radius:var(--radius-pill);
    background:#eff6ff;
    color:var(--color-blue);
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
}

.produto-info h3,
.produto-content h3{
    margin:0 0 12px;
    min-height:50px;
    color:var(--color-dark);
    font-size:22px;
    line-height:1.12;
    font-weight:900;
    letter-spacing:-.03em;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.produto-info p,
.produto-content p{
    margin-bottom:16px;
    min-height:64px;
    color:var(--color-muted);
    font-size:13.5px;
    line-height:1.55;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.produto-pesos{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    width:100%;
    margin-bottom:18px;
}

.peso-btn{
    width:100%;
    min-width:0;
    height:39px;
    border:0;
    border-radius:14px;
    background:#f1f5f9;
    color:var(--color-dark);
    font-size:13px;
    font-weight:900;
    white-space:nowrap;
    transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);
}

.peso-btn:hover{
    transform:translateY(-1px);
    background:#dbeafe;
    color:var(--color-blue);
}

.peso-btn.active{
    background:var(--color-dark);
    color:var(--color-white);
}

.produto-actions,
.produto-footer{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:auto;
}

.produto-actions .btn-produto,
.produto-actions .btn-produto-whatsapp,
.produto-footer .btn-produto,
.produto-footer .btn-whatsapp{
    min-height:50px;
    height:50px;
    padding:0 12px;
    border-radius:17px;
    font-size:13px;
    font-weight:900;
}

.empty-products{
    width:100%;
    padding:60px;
    border-radius:34px;
    text-align:center;
    background:var(--color-white);
    border:1px solid var(--color-border-soft);
    box-shadow:var(--shadow-sm);
}

.empty-products h3{
    margin-bottom:16px;
    font-size:32px;
    font-weight:900;
}

.empty-products p{
    color:var(--color-muted);
    line-height:1.8;
}

/* Grade normal de produtos, quando não for carrossel */
.produtos-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.produtos-grid .produto-img{
    height:300px;
}

.produtos-grid .produto-info h3{
    font-size:26px;
}

/* =========================================================
   10. LINHAS / CORES DA MARCA
   ========================================================= */

.linhas-grid-5{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:26px;
}

.linha-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:430px;
    display:flex;
    align-items:flex-end;
    padding:34px;
    border-radius:38px;
    color:var(--color-white);
    box-shadow:0 18px 45px rgba(15,23,42,.12);
    transition:transform var(--transition),box-shadow var(--transition);
}

.linha-card:hover{
    transform:translateY(-12px) scale(1.01);
    box-shadow:0 30px 70px rgba(15,23,42,.18);
}

.linha-card::after{
    content:'';
    position:absolute;
    width:240px;
    height:240px;
    top:-90px;
    right:-90px;
    z-index:1;
    border-radius:50%;
    background:rgba(255,255,255,.14);
}

.linha-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(15,23,42,.12),rgba(15,23,42,.90));
}

.linha-content{
    position:relative;
    z-index:3;
}

.linha-label{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    margin-bottom:22px;
    border-radius:var(--radius-pill);
    background:rgba(255,255,255,.18);
    backdrop-filter:blur(12px);
    font-size:12px;
    font-weight:900;
}

.linha-content h3{
    margin-bottom:18px;
    font-size:38px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}

.linha-content p{
    margin-bottom:26px;
    color:rgba(255,255,255,.88);
    font-size:15px;
    line-height:1.75;
}

.linha-content a{
    position:relative;
    color:inherit;
    font-weight:900;
}

.linha-content a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-7px;
    width:100%;
    height:2px;
    background:currentColor;
}

.linha-sementes{background:radial-gradient(circle at top right,rgba(255,255,255,.22),transparent 34%),linear-gradient(145deg,#22c55e 0%,#15803d 45%,#052e16 100%);}
.linha-pop{background:radial-gradient(circle at top right,rgba(255,255,255,.20),transparent 34%),linear-gradient(145deg,#ef4444 0%,#b91c1c 48%,#450a0a 100%);}
.linha-eco{background:radial-gradient(circle at top right,rgba(255,255,255,.22),transparent 34%),linear-gradient(145deg,#38bdf8 0%,#2563eb 48%,#1e1b4b 100%);}
.linha-gold{background:radial-gradient(circle at top right,rgba(250,204,21,.22),transparent 34%),linear-gradient(145deg,#1f2937 0%,#111827 48%,#020617 100%);}
.linha-raizes{background:radial-gradient(circle at top right,rgba(255,255,255,.35),transparent 34%),linear-gradient(145deg,#facc15 0%,#ca8a04 48%,#713f12 100%);color:var(--color-dark-2);}
.linha-raizes .linha-content p{color:rgba(17,24,39,.78);}
.linha-raizes .linha-label{background:rgba(17,24,39,.12);}
.linha-gold .linha-label{background:rgba(250,204,21,.18);color:var(--color-yellow);}

/* =========================================================
   11. BUSINESS / DISTRIBUIDOR / LOJISTA
   ========================================================= */

.business-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px;
}

.business-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:560px;
    display:flex;
    align-items:flex-end;
    padding:60px;
    border-radius:40px;
    color:var(--color-white);
    background:var(--color-dark);
    box-shadow:var(--shadow-sm);
    transition:transform var(--transition),box-shadow var(--transition);
}

.business-card:hover{
    transform:translateY(-10px);
    box-shadow:var(--shadow-lg);
}

.business-card::after{
    content:'';
    position:absolute;
    width:260px;
    height:260px;
    top:-120px;
    right:-120px;
    z-index:1;
    border-radius:50%;
    background:rgba(255,255,255,.07);
}

.business-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(15,23,42,.10),rgba(15,23,42,.92));
}

.business-content{
    position:relative;
    z-index:2;
}

.business-label{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    margin-bottom:22px;
    border-radius:var(--radius-pill);
    background:rgba(255,255,255,.15);
    backdrop-filter:blur(10px);
    font-size:13px;
    font-weight:900;
}

.business-content h2,
.business-card h2{
    margin-bottom:22px;
    font-size:clamp(34px,3.6vw,48px);
    line-height:1.08;
    font-weight:900;
    letter-spacing:-.04em;
}

.business-content p,
.business-card p{
    max-width:540px;
    margin-bottom:28px;
    color:#e5e7eb;
    line-height:1.9;
}

.business-content ul,
.business-card ul{
    margin-bottom:34px;
}

.business-content li,
.business-card li{
    position:relative;
    margin-bottom:14px;
    padding-left:24px;
    color:#f8fafc;
    font-weight:600;
}

.business-content li::before,
.business-card li::before{
    content:'';
    position:absolute;
    left:0;
    top:10px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--color-yellow);
}

.business-distribuidor{background:linear-gradient(135deg,rgba(37,99,235,.45),rgba(15,23,42,.85)),url('/assets/img/distribuidor.jpg') center/cover;}
.business-lojista{background:linear-gradient(135deg,rgba(22,163,74,.45),rgba(15,23,42,.85)),url('/assets/img/lojista.jpg') center/cover;}

/* =========================================================
   12. MARCAS
   ========================================================= */

.marca-card{
    position:relative;
    overflow:hidden;
    min-height:320px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding:42px;
    border-radius:36px;
}

.marca-card::before,
.marca-card::after{
    content:'';
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,.10);
}

.marca-card::before{width:240px;height:240px;top:-120px;right:-120px;}
.marca-card::after{width:160px;height:160px;bottom:-80px;left:-80px;}

.marca-top,
.marca-card h3,
.marca-card p,
.marca-card a{
    position:relative;
    z-index:2;
}

.marca-label{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    border-radius:var(--radius-pill);
    background:rgba(255,255,255,.18);
    backdrop-filter:blur(10px);
    font-size:12px;
    font-weight:900;
}

.marca-card h3{
    margin-bottom:22px;
    font-size:42px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}

.marca-card p{
    margin-bottom:30px;
    line-height:1.85;
    opacity:.92;
}

.marca-card a{
    font-weight:900;
}

.marca-yellow{background:linear-gradient(135deg,#facc15,#eab308);color:var(--color-dark-2);}
.marca-blue{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:var(--color-white);}
.marca-green{background:linear-gradient(135deg,#16a34a,#15803d);color:var(--color-white);}
.marca-dark{background:linear-gradient(135deg,#111827,#1e293b);color:var(--color-white);}

/* =========================================================
   13. ONDE ENCONTRAR / CATÁLOGO
   ========================================================= */

.catalogo-box,
.onde-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    padding:70px;
    border-radius:40px;
    background:var(--color-dark-2);
    color:var(--color-white);
}

.catalogo-box h2,
.onde-box h2{
    margin-bottom:22px;
    font-size:clamp(34px,4vw,52px);
    line-height:1.15;
    font-weight:900;
    letter-spacing:-.04em;
}

.catalogo-box p,
.onde-box p{
    max-width:720px;
    color:#cbd5e1;
    line-height:1.8;
}

.onde-premium-box{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:35px;
    align-items:stretch;
    padding:45px;
    border-radius:var(--radius-xl);
    background:var(--color-white);
    box-shadow:0 24px 70px rgba(15,23,42,.08);
    overflow:hidden;
}

.onde-content{
    padding:70px;
    border-radius:36px;
    color:var(--color-white);
    background:radial-gradient(circle at top right,rgba(250,204,21,.18),transparent 35%),linear-gradient(135deg,var(--color-dark),var(--color-dark-2));
}

.onde-content h2{
    margin-bottom:24px;
    font-size:clamp(34px,4vw,54px);
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.04em;
}

.onde-content p{
    max-width:720px;
    margin-bottom:36px;
    color:#cbd5e1;
    font-size:19px;
    line-height:1.8;
}

.onde-actions{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
}

.onde-map-card{
    position:relative;
    min-height:480px;
    border-radius:36px;
    overflow:hidden;
    background:linear-gradient(rgba(15,23,42,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.08) 1px,transparent 1px),radial-gradient(circle at 30% 20%,rgba(37,99,235,.25),transparent 28%),radial-gradient(circle at 70% 80%,rgba(250,204,21,.25),transparent 30%),#eef2f7;
    background-size:42px 42px,42px 42px,auto,auto,auto;
}

.map-pin{
    position:absolute;
    width:28px;
    height:28px;
    border-radius:50% 50% 50% 0;
    background:var(--color-yellow);
    transform:rotate(-45deg);
    animation:pinPulse 2.4s infinite;
}

.map-pin::after{
    content:'';
    position:absolute;
    width:10px;
    height:10px;
    top:9px;
    left:9px;
    border-radius:50%;
    background:var(--color-dark-2);
}

.pin-one{top:24%;left:28%;}
.pin-two{top:52%;left:62%;animation-delay:.5s;}
.pin-three{top:70%;left:38%;animation-delay:1s;}

.map-panel{
    position:absolute;
    left:30px;
    right:30px;
    bottom:30px;
    padding:28px;
    border-radius:28px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(255,255,255,.55);
    backdrop-filter:blur(16px);
    box-shadow:0 20px 45px rgba(15,23,42,.12);
}

.map-panel span{
    display:block;
    margin-bottom:8px;
    color:var(--color-blue);
    font-size:13px;
    font-weight:900;
}

.map-panel strong{
    display:block;
    margin-bottom:10px;
    color:var(--color-dark);
    font-size:26px;
    line-height:1.15;
}

.map-panel p{
    color:var(--color-muted);
    line-height:1.7;
}

@keyframes pinPulse{
    0%,100%{box-shadow:0 0 0 0 rgba(250,204,21,.45);}
    70%{box-shadow:0 0 0 18px rgba(250,204,21,0);}
}

/* =========================================================
   14. NÚMEROS / DIFERENCIAIS / PROCESSO / BLOG
   ========================================================= */

.numeros-wrapper{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:30px;
    padding:70px;
    border-radius:42px;
    background:linear-gradient(135deg,var(--color-dark),var(--color-dark-2),#1e293b);
}

.numeros-wrapper::before,
.numeros-wrapper::after{
    content:'';
    position:absolute;
    border-radius:50%;
}

.numeros-wrapper::before{width:500px;height:500px;background:rgba(250,204,21,.08);top:-250px;right:-250px;}
.numeros-wrapper::after{width:400px;height:400px;background:rgba(37,99,235,.08);bottom:-200px;left:-200px;}

.numero-card{
    position:relative;
    z-index:2;
    padding:20px;
}

.numero-value{
    margin-bottom:20px;
    font-size:clamp(48px,5vw,72px);
    line-height:1;
    font-weight:900;
    background:linear-gradient(135deg,var(--color-yellow),#fde68a);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.numero-card h3{
    margin-bottom:16px;
    color:var(--color-white);
    font-size:28px;
    font-weight:900;
}

.numero-card p{
    color:#cbd5e1;
    line-height:1.8;
}

.diferenciais-grid,
.blog-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.diferencial-card{
    padding:42px;
    border-radius:36px;
}

.diferencial-card strong{
    display:block;
    margin-bottom:20px;
    color:var(--color-yellow);
    font-size:56px;
    font-weight:900;
}

.diferencial-card h3,
.processo-card h3,
.blog-content h3{
    margin-bottom:16px;
    color:var(--color-dark);
    font-size:28px;
    line-height:1.25;
    font-weight:900;
}

.diferencial-card p,
.processo-card p,
.blog-content p{
    color:var(--color-muted);
    line-height:1.85;
}

.processo-grid{
    position:relative;
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.processo-grid::before{
    content:'';
    position:absolute;
    top:72px;
    left:8%;
    right:8%;
    height:2px;
    z-index:1;
    background:linear-gradient(90deg,rgba(250,204,21,.25),rgba(37,99,235,.25));
}

.processo-card{
    position:relative;
    z-index:2;
    padding:42px;
    border-radius:36px;
}

.processo-number{
    width:82px;
    height:82px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:28px;
    border-radius:26px;
    background:linear-gradient(135deg,var(--color-yellow),var(--color-yellow-2));
    color:var(--color-dark-2);
    font-size:30px;
    font-weight:900;
    box-shadow:0 18px 35px rgba(250,204,21,.28);
}

.blog-card{
    overflow:hidden;
    border-radius:36px;
}

.blog-image{
    position:relative;
    height:260px;
    overflow:hidden;
}

.blog-green{background:radial-gradient(circle at top right,rgba(255,255,255,.20),transparent 30%),linear-gradient(135deg,#22c55e,#166534);}
.blog-yellow{background:radial-gradient(circle at top right,rgba(255,255,255,.25),transparent 30%),linear-gradient(135deg,#facc15,#ca8a04);}
.blog-blue{background:radial-gradient(circle at top right,rgba(255,255,255,.20),transparent 30%),linear-gradient(135deg,#38bdf8,#1d4ed8);}

.blog-image::before,
.blog-image::after{
    content:'';
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,.10);
}

.blog-image::before{width:180px;height:180px;top:-70px;right:-70px;}
.blog-image::after{width:120px;height:120px;bottom:-50px;left:-50px;}

.blog-content{padding:36px;}

.blog-category{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    margin-bottom:20px;
    border-radius:var(--radius-pill);
    background:#f3f4f6;
    color:var(--color-blue);
    font-size:12px;
    font-weight:900;
}

.blog-content a{
    position:relative;
    color:var(--color-blue);
    font-weight:900;
}

.blog-content a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-6px;
    width:100%;
    height:2px;
    background:currentColor;
}

/* =========================================================
   15. ESTRUTURA / FÁBRICA
   ========================================================= */

.estrutura-wrapper{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:50px;
    align-items:center;
}

.estrutura-content h2{
    margin:22px 0;
    color:var(--color-dark);
    font-size:clamp(38px,4.8vw,64px);
    line-height:1.08;
    font-weight:900;
    letter-spacing:-.05em;
}

.estrutura-content p{
    margin-bottom:36px;
    color:var(--color-muted);
    font-size:20px;
    line-height:1.9;
}

.estrutura-list{
    display:flex;
    flex-direction:column;
    gap:22px;
    margin-bottom:40px;
}

.estrutura-item{
    position:relative;
    display:flex;
    flex-direction:column;
    padding-left:26px;
}

.estrutura-item::before{
    content:'';
    position:absolute;
    left:0;
    top:12px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--color-yellow);
}

.estrutura-item strong{
    margin-bottom:6px;
    color:var(--color-dark-2);
    font-size:24px;
}

.estrutura-item span{color:var(--color-muted);}

.estrutura-actions{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
}

.estrutura-visual{
    position:relative;
    min-height:620px;
}

.estrutura-card{
    position:absolute;
    border-radius:42px;
    overflow:hidden;
}

.estrutura-card-main{
    inset:0;
    display:flex;
    align-items:flex-end;
    padding:50px;
    background:radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 35%),linear-gradient(135deg,var(--color-dark),var(--color-dark-2),#1e293b);
    box-shadow:0 35px 80px rgba(15,23,42,.18);
}

.estrutura-card-main span{
    position:relative;
    z-index:2;
    color:var(--color-white);
    font-size:54px;
    line-height:1;
    font-weight:900;
}

.estrutura-card-main::before,
.estrutura-card-main::after{
    content:'';
    position:absolute;
    border-radius:50%;
}

.estrutura-card-main::before{width:420px;height:420px;background:rgba(250,204,21,.08);top:-180px;right:-180px;}
.estrutura-card-main::after{width:280px;height:280px;background:rgba(37,99,235,.08);bottom:-120px;left:-120px;}

.estrutura-card-floating{
    width:280px;
    right:-20px;
    bottom:40px;
    padding:34px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(255,255,255,.55);
    backdrop-filter:blur(18px);
    box-shadow:0 25px 60px rgba(15,23,42,.12);
}

.estrutura-card-floating strong{
    display:block;
    margin-bottom:12px;
    color:var(--color-dark-2);
    font-size:34px;
}

.estrutura-card-floating p{
    color:var(--color-muted);
    line-height:1.7;
}

/* =========================================================
   16. PARCEIROS / WHATSAPP SMART / CTA FINAL
   ========================================================= */

.parceiros-slider{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:34px 0;
    border-radius:34px;
    background:linear-gradient(135deg,var(--color-dark),var(--color-dark-2));
}

.parceiros-slider::before,
.parceiros-slider::after{
    content:'';
    position:absolute;
    top:0;
    width:160px;
    height:100%;
    z-index:3;
    pointer-events:none;
}

.parceiros-slider::before{left:0;background:linear-gradient(90deg,var(--color-dark),transparent);}
.parceiros-slider::after{right:0;background:linear-gradient(270deg,var(--color-dark-2),transparent);}

.parceiros-track{
    display:flex;
    align-items:center;
    gap:26px;
    width:max-content;
    animation:marcasScroll 28s linear infinite;
}

.parceiros-slider:hover .parceiros-track{animation-play-state:paused;}

.parceiro-logo{
    min-width:230px;
    height:110px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:26px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    color:var(--color-white);
    backdrop-filter:blur(10px);
    font-size:22px;
    font-weight:900;
    letter-spacing:-.02em;
}

@keyframes marcasScroll{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
}

.whatsapp-smart-box{
    position:relative;
    overflow:hidden;
    padding:80px;
    border-radius:var(--radius-xl);
    background:radial-gradient(circle at top right,rgba(34,197,94,.22),transparent 35%),linear-gradient(135deg,#052e16,#14532d,#166534);
    color:var(--color-white);
    box-shadow:0 30px 80px rgba(15,23,42,.15);
}

.whatsapp-smart-box::before{
    content:'';
    position:absolute;
    width:480px;
    height:480px;
    top:-220px;
    right:-220px;
    border-radius:50%;
    background:rgba(255,255,255,.06);
}

.whatsapp-smart-content{
    position:relative;
    z-index:2;
    max-width:980px;
}

.whatsapp-smart-content h2{
    margin:22px 0;
    font-size:clamp(36px,4.8vw,62px);
    line-height:1.08;
    font-weight:900;
    letter-spacing:-.05em;
}

.whatsapp-smart-content p{
    max-width:760px;
    margin-bottom:42px;
    color:#dcfce7;
    font-size:20px;
    line-height:1.8;
}

.whatsapp-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}

.whatsapp-option{
    padding:28px;
    border-radius:28px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(12px);
    color:var(--color-white);
    transition:var(--transition);
}

.whatsapp-option:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,.18);
}

.whatsapp-option strong{
    display:block;
    margin-bottom:10px;
    font-size:22px;
}

.whatsapp-option span{
    color:#dcfce7;
    line-height:1.6;
}

.final-cta-box{
    padding:85px;
    border-radius:42px;
    text-align:center;
    background:var(--color-white);
    box-shadow:var(--shadow-md);
}

.final-cta-box h2{
    margin-bottom:24px;
    font-size:clamp(36px,5vw,62px);
    line-height:1.05;
    font-weight:900;
    letter-spacing:-.05em;
}

.final-cta-box p{
    max-width:900px;
    margin:0 auto 40px;
    color:var(--color-muted);
    font-size:20px;
    line-height:1.8;
}

.final-cta-actions{
    display:flex;
    justify-content:center;
    gap:20px;
    flex-wrap:wrap;
}

/* =========================================================
   17. FOOTER
   ========================================================= */

.site-footer{
    position:relative;
    overflow:hidden;
    margin-top:100px;
    padding-top:100px;
    color:var(--color-white);
    background:radial-gradient(circle at top right,rgba(250,204,21,.08),transparent 30%),linear-gradient(135deg,#020617,var(--color-dark),var(--color-dark-2));
}

.site-footer::before{
    content:'';
    position:absolute;
    width:520px;
    height:520px;
    top:-260px;
    left:-260px;
    border-radius:50%;
    background:rgba(37,99,235,.06);
}

.footer-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:60px;
    padding-bottom:70px;
}

.footer-brand h2{
    margin-bottom:18px;
    font-size:46px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}

.footer-brand p,
.footer-col p{
    max-width:420px;
    margin-bottom:30px;
    color:#cbd5e1;
    line-height:1.9;
}

.footer-social{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.footer-social a,
.footer-commercial a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 20px;
    border-radius:14px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.10);
    color:var(--color-white);
    transition:var(--transition);
}

.footer-social a:hover,
.footer-commercial a:hover{
    background:var(--color-yellow);
    color:var(--color-dark-2);
}

.footer-col h3{
    margin-bottom:24px;
    font-size:26px;
    font-weight:900;
}

.footer-col ul,
.footer-contact,
.footer-commercial{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.footer-col a{
    color:#cbd5e1;
    transition:color var(--transition),transform var(--transition);
}

.footer-col a:hover{
    color:var(--color-yellow);
    transform:translateX(4px);
}

.footer-contact-item strong{
    display:block;
    margin-bottom:6px;
    color:var(--color-white);
}

.footer-contact-item span{
    color:#cbd5e1;
    line-height:1.7;
}

.footer-commercial a{
    justify-content:flex-start;
    min-height:52px;
    font-weight:900;
}

.footer-bottom{
    position:relative;
    z-index:2;
    padding:30px 0;
    text-align:center;
    color:#94a3b8;
    border-top:1px solid rgba(255,255,255,.10);
}

/* =========================================================
   18. LOADER
   JS: adicione .hide em .site-loader para ocultar
   ========================================================= */

.site-loader{
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(circle at top right,rgba(250,204,21,.08),transparent 30%),linear-gradient(135deg,#020617,var(--color-dark),var(--color-dark-2));
    transition:opacity .8s ease,visibility .8s ease;
}

.site-loader.hide{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
}

.loader-content{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:28px;
}

.loader-logo{
    width:120px;
    height:120px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:36px;
    background:linear-gradient(135deg,var(--color-yellow),var(--color-yellow-2));
    color:var(--color-dark-2);
    font-size:58px;
    font-weight:900;
    box-shadow:0 20px 50px rgba(250,204,21,.35);
    animation:loaderPulse 2s infinite;
}

.loader-logo img{
    width:70%;
    height:70%;
    object-fit:contain;
}

.loader-line{
    position:relative;
    width:260px;
    height:8px;
    overflow:hidden;
    border-radius:var(--radius-pill);
    background:rgba(255,255,255,.08);
}

.loader-line::before{
    content:'';
    position:absolute;
    left:-40%;
    top:0;
    width:40%;
    height:100%;
    border-radius:var(--radius-pill);
    background:linear-gradient(90deg,var(--color-yellow),#fde68a);
    animation:loaderMove 1.5s infinite ease;
}

.loader-content span{
    color:#cbd5e1;
    font-size:16px;
    letter-spacing:.08em;
    text-transform:uppercase;
}

@keyframes loaderMove{
    0%{left:-40%;}
    100%{left:100%;}
}

@keyframes loaderPulse{
    0%,100%{transform:scale(1);}
    50%{transform:scale(1.05);}
}

/* =========================================================
   19. ANIMAÇÕES ON SCROLL
   ========================================================= */

.reveal,
.reveal-left,
.reveal-right,
.zoom-reveal{
    opacity:0;
    transition:opacity 1s ease,transform 1s ease;
}

.reveal{transform:translateY(70px);}
.reveal-left{transform:translateX(-80px);}
.reveal-right{transform:translateX(80px);}
.zoom-reveal{transform:scale(.88);}

.reveal.active,
.reveal-left.active,
.reveal-right.active,
.zoom-reveal.active{
    opacity:1;
    transform:none;
}

body:not(.js-loaded) .reveal,
body:not(.js-loaded) .reveal-left,
body:not(.js-loaded) .reveal-right,
body:not(.js-loaded) .zoom-reveal{
    opacity:1!important;
    transform:none!important;
}

/* =========================================================
   20. RESPONSIVO
   ========================================================= */

@media(max-width:1300px){
    .linhas-grid-5{grid-template-columns:repeat(3,minmax(0,1fr));}
    .main-menu{gap:18px;}
    .main-menu a{font-size:12px;}
}

@media(max-width:1200px){
    .pilares-grid,
    .linhas-grid,
    .marcas-grid,
    .produtos-grid,
    .numeros-wrapper,
    .processo-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .processo-grid::before{display:none;}
}

@media(max-width:1100px){
    .estrutura-wrapper{grid-template-columns:1fr;}
    .estrutura-visual{max-width:680px;width:100%;margin:0 auto;}
}

@media(max-width:991px){
    :root{--header-height:90px;}

    .main-menu{display:none;}
    .menu-mobile-btn{display:flex;}

    .business-grid,
    .diferenciais-grid,
    .blog-grid,
    .onde-premium-box,
    .whatsapp-options{
        grid-template-columns:1fr;
    }

    .catalogo-box,
    .onde-box{
        flex-direction:column;
        align-items:flex-start;
    }

    .business-card{min-height:auto;}
    .onde-content{padding:45px;}
    .whatsapp-smart-box{padding:45px;}
}

@media(max-width:900px){
    .linhas-grid-5{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:768px){
    :root{--header-height:86px;}

    .container{padding-inline:22px;}

    .site-header,
    .site-header.scrolled,
    .header-wrapper,
    .site-header.scrolled .header-wrapper{
        height:86px;
    }

    .logo-area h1,
    .site-header.scrolled .logo-area h1{
        font-size:26px;
    }

    .logo-area span{font-size:11px;}
    .header-whatsapp{display:none;}

    .section{padding:75px 0;}
    .section-header{margin-bottom:42px;}

    .pilares-section{margin-top:-45px;}

    .pilares-grid,
    .linhas-grid,
    .linhas-grid-5,
    .marcas-grid,
    .produtos-grid,
    .numeros-wrapper,
    .processo-grid,
    .footer-grid{
        grid-template-columns:1fr;
    }

    .banner-item{
        min-height:500px;
        padding:70px 0;
    }

    .banner-actions,
    .final-cta-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .business-card,
    .catalogo-box,
    .onde-box,
    .final-cta-box,
    .numeros-wrapper{
        padding:40px;
    }

    .linha-card{min-height:360px;}
    .estrutura-content p{font-size:17px;}
    .estrutura-visual{min-height:480px;}

    .estrutura-card-floating{
        width:220px;
        padding:24px;
    }

    .estrutura-card-floating strong{font-size:26px;}

    .parceiro-logo{
        min-width:180px;
        height:90px;
        font-size:18px;
    }

    .produtos-home .container{
        padding-inline:22px;
    }

    .produtos-grid-home .produto-card,
    .produtos-grid-home .produto-card{
        flex-basis:280px;
        width:280px;
        min-width:280px;
        max-width:280px;
    }
}

@media(max-width:600px){
    .onde-premium-box{padding:20px;}
    .onde-map-card{min-height:380px;}

    .business-card,
    .catalogo-box,
    .onde-box,
    .final-cta-box,
    .whatsapp-smart-box,
    .onde-content{
        padding:32px;
    }

    .produto-card,
    .produto-info,
    .produto-content{
        border-radius:28px;
    }

    .produto-img,
    .produto-image-area{
        height:220px;
    }

    .produto-actions,
    .produto-footer{
        grid-template-columns:1fr;
    }

    .produto-pesos{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .footer-brand h2{font-size:36px;}
}

@media(max-width:420px){
    .container,
    .produtos-home .container{
        padding-inline:16px;
    }

    .mobile-menu-content{width:100%;}

    .produtos-grid-home .produto-card{
        flex-basis:260px;
        width:260px;
        min-width:260px;
        max-width:260px;
    }

    .produto-info h3,
    .produto-content h3{
        font-size:20px;
    }

    .peso-btn{
        font-size:12px;
        height:38px;
    }
}

/* =========================================================
   RPP 2026 - CAMADA FINAL DE PADRONIZACAO DO SITE
   ========================================================= */

body{
    background:
        radial-gradient(circle at 12% 0%, rgba(0,143,69,.08), transparent 28%),
        radial-gradient(circle at 90% 10%, rgba(255,204,0,.12), transparent 26%),
        var(--rpp-paper);
    color:var(--rpp-ink);
}

.site-header{
    background:rgba(255,255,255,.9);
    border-bottom:1px solid rgba(7,28,20,.08);
    box-shadow:0 10px 34px rgba(7,28,20,.05);
}

.site-header.scrolled{
    background:rgba(255,255,255,.97);
    box-shadow:0 16px 44px rgba(7,28,20,.11);
}

.main-menu a:hover,
.main-menu a.active{
    color:var(--rpp-green);
}

.main-menu a::after{
    background:linear-gradient(90deg,var(--rpp-green),var(--rpp-yellow));
}

.header-whatsapp,
.btn-whatsapp,
.btn-cta,
.btn-banner,
.btn-produto,
.btn-dark{
    border-radius:16px;
    background:linear-gradient(135deg,var(--rpp-green),var(--rpp-green-2));
    color:#fff;
    box-shadow:0 16px 34px rgba(0,143,69,.22);
}

.btn-banner-outline,
.btn-outline,
.btn-produto-whatsapp{
    border-radius:16px;
}

.section-title span,
.section-tag,
.eyebrow,
.banner-tag{
    border-radius:999px;
    background:rgba(0,143,69,.09);
    color:var(--rpp-green);
    border:1px solid rgba(0,143,69,.16);
}

.about-page,
.distributor-page,
.seller-page,
.partners-page,
.brands-page,
.products-page,
.contact-page-modern{
    background:
        radial-gradient(circle at 16% 0%, rgba(0,143,69,.08), transparent 28%),
        radial-gradient(circle at 88% 5%, rgba(255,204,0,.12), transparent 24%),
        var(--rpp-paper);
}

.about-hero,
.distributor-hero,
.seller-hero,
.partners-hero,
.brands-hero,
.products-hero{
    background:
        linear-gradient(135deg, rgba(255,255,255,.94), rgba(244,248,240,.82)),
        radial-gradient(circle at 82% 12%, rgba(255,204,0,.18), transparent 28%),
        radial-gradient(circle at 14% 14%, rgba(0,143,69,.12), transparent 30%);
}

.about-hero h1,
.distributor-hero h1,
.seller-hero h1,
.partners-hero h1,
.brands-hero h1,
.products-hero h1,
.section-title h2{
    color:var(--rpp-ink);
    letter-spacing:-.045em;
}

.about-hero p,
.distributor-hero p,
.seller-hero p,
.partners-hero p,
.brands-hero p,
.products-hero p,
.section-title p{
    color:var(--rpp-muted);
}

.hero-card,
.hero-feature-card,
.brands-hero-card,
.seller-hero-card,
.distributor-form-card,
.partner-card,
.brand-card,
.product-card,
.requirements-card,
.support-card,
.management-card,
.value-card,
.ecosystem-card,
.purpose-card,
.form-card,
.filter-box,
.catalogo-box{
    border:1px solid var(--rpp-border);
    box-shadow:var(--rpp-shadow-soft);
}

.partner-card,
.brand-card,
.product-card,
.value-card,
.ecosystem-card,
.purpose-card{
    transition:transform .25s ease, box-shadow .25s ease;
}

.partner-card:hover,
.brand-card:hover,
.product-card:hover,
.value-card:hover,
.ecosystem-card:hover,
.purpose-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--rpp-shadow);
}

.products-page .product-card,
.brands-page .brand-card,
.partners-page .partner-card{
    border-radius:24px;
    background:#fff;
}

.products-page .product-card h3,
.brands-page .brand-card h3,
.partners-page .partner-card h3{
    color:var(--rpp-ink);
}

.products-page .product-card p,
.brands-page .brand-card p,
.partners-page .partner-card p{
    color:var(--rpp-muted);
}

@media(max-width:820px){
    .about-hero h1,
    .distributor-hero h1,
    .seller-hero h1,
    .partners-hero h1,
    .brands-hero h1,
    .products-hero h1{
        font-size:42px;
        line-height:1;
    }
}

/* =========================================================
   RPP 2026 - HOME EXECUTIVA E POLIMENTO GLOBAL
   ========================================================= */

:root {
    --rpp-accent-cyan:#1ab7a6;
    --rpp-accent-violet:#6d5dfc;
    --rpp-surface:#ffffff;
    --rpp-surface-soft:#f4f8f2;
}

.rpp-next-home {
    color:var(--rpp-ink);
    background:
        linear-gradient(180deg, rgba(255,255,255,.45), rgba(244,248,242,.9)),
        var(--rpp-paper);
    overflow:hidden;
}

.rpp-hero-next {
    position:relative;
    min-height:calc(100vh - 78px);
    display:flex;
    align-items:stretch;
    background:#061d16;
    overflow:hidden;
}

.rpp-hero-next-bg {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.02);
}

.rpp-hero-next-shade {
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(4,18,13,.94), rgba(4,18,13,.76) 46%, rgba(4,18,13,.35)),
        radial-gradient(circle at 20% 15%, rgba(0,185,105,.28), transparent 32%),
        radial-gradient(circle at 82% 18%, rgba(255,204,0,.22), transparent 26%);
}

.rpp-hero-next-grid {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);
    gap:42px;
    align-items:center;
    padding-block:78px 96px;
}

.rpp-hero-next-copy h1 {
    max-width:900px;
    margin:18px 0;
    color:#fff;
    font-size:clamp(44px,6vw,84px);
    line-height:1;
    font-weight:950;
    letter-spacing:-.045em;
}

.rpp-hero-next-copy p {
    max-width:760px;
    color:rgba(255,255,255,.82);
    font-size:19px;
    line-height:1.72;
}

.rpp-profile-switch {
    width:min(680px, 100%);
    margin-top:30px;
    padding:6px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
}

.rpp-profile-switch button {
    min-height:44px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:rgba(255,255,255,.78);
    font:inherit;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
    transition:background .22s ease, color .22s ease, transform .22s ease;
}

.rpp-profile-switch button:hover,
.rpp-profile-switch button.active {
    background:var(--rpp-yellow);
    color:#071c14;
    transform:translateY(-1px);
}

.rpp-command-center {
    padding:24px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:28px;
    background:rgba(255,255,255,.13);
    box-shadow:0 30px 90px rgba(0,0,0,.22);
    backdrop-filter:blur(22px);
}

.rpp-command-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:18px;
    color:#fff;
}

.rpp-command-top span {
    color:rgba(255,255,255,.72);
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.rpp-command-top strong {
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    background:rgba(0,185,105,.2);
    color:#a7f3d0;
    font-size:12px;
}

.rpp-command-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.rpp-command-grid article {
    min-height:132px;
    padding:20px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:20px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:rgba(255,255,255,.12);
}

.rpp-command-grid strong {
    color:#fff;
    font-size:24px;
    letter-spacing:-.025em;
}

.rpp-command-grid span {
    color:rgba(255,255,255,.72);
    line-height:1.45;
    font-size:13px;
    font-weight:700;
}

.rpp-command-flow {
    margin-top:12px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
}

.rpp-command-flow span {
    min-height:38px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,204,0,.16);
    color:#ffe57a;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}

.rpp-stack-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.rpp-stack-card {
    min-height:330px;
    padding:30px;
    border:1px solid var(--rpp-border);
    border-radius:26px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:#fff;
    box-shadow:var(--rpp-shadow-soft);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.rpp-stack-card:hover {
    transform:translateY(-7px);
    border-color:rgba(0,143,69,.26);
    box-shadow:var(--rpp-shadow);
}

.rpp-stack-card span {
    width:48px;
    height:48px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg, var(--rpp-green), var(--rpp-accent-cyan));
    color:#fff;
    font-weight:950;
}

.rpp-stack-card h3 {
    margin:28px 0 12px;
    color:var(--rpp-ink);
    font-size:30px;
    line-height:1.04;
    letter-spacing:-.035em;
}

.rpp-stack-card p {
    color:var(--rpp-muted);
    line-height:1.68;
}

.rpp-commercial {
    position:relative;
}

.rpp-commercial::before {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(255,255,255,.04), transparent 42%, rgba(255,204,0,.08));
    pointer-events:none;
}

.rpp-commercial > * {
    position:relative;
    z-index:1;
}

.rpp-product-card,
.rpp-brand-card,
.partner-card,
.brand-card,
.product-card {
    will-change:transform;
}

.rpp-product-card:focus-visible,
.rpp-brand-card:focus-visible,
.rpp-btn:focus-visible,
.rpp-profile-switch button:focus-visible {
    outline:3px solid rgba(255,204,0,.85);
    outline-offset:4px;
}

.rpp-final {
    padding-bottom:110px;
}

.rpp-final-box {
    position:relative;
    overflow:hidden;
}

.rpp-final-box::after {
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    right:-90px;
    bottom:-110px;
    border-radius:50%;
    background:rgba(255,255,255,.10);
    filter:blur(18px);
}

.rpp-final-box > * {
    position:relative;
    z-index:1;
}

.products-page .filters-panel,
.products-page .catalog-header,
.products-page .line-block,
.brands-page .brand-card,
.partners-page .partner-card,
.contact-page-modern .form-card {
    border-radius:24px;
}

.site-footer-premium {
    margin-top:0;
}

@media(max-width:1100px) {
    .rpp-hero-next {
        min-height:auto;
    }

    .rpp-hero-next-grid,
    .rpp-stack-grid {
        grid-template-columns:1fr;
    }

    .rpp-command-center {
        max-width:720px;
    }
}

@media(max-width:760px) {
    .rpp-hero-next-grid {
        padding-block:54px 70px;
    }

    .rpp-hero-next-copy h1 {
        font-size:42px;
        letter-spacing:-.035em;
    }

    .rpp-hero-next-copy p {
        font-size:16px;
    }

    .rpp-profile-switch,
    .rpp-command-grid,
    .rpp-command-flow {
        grid-template-columns:1fr;
        border-radius:22px;
    }

    .rpp-profile-switch button {
        border-radius:16px;
    }

    .rpp-command-center,
    .rpp-stack-card {
        border-radius:22px;
        padding:22px;
    }
}

@media(prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration:.001ms!important;
        animation-iteration-count:1!important;
        scroll-behavior:auto!important;
        transition-duration:.001ms!important;
    }
}

/* =========================================================
   RPP 2026 - PADRAO UNIFICADO SITE PUBLICO
   ========================================================= */

.about-page,
.distributor-page,
.seller-page,
.partners-page,
.brands-page,
.products-page,
.contact-page-modern,
.brand-experience {
    background:
        radial-gradient(circle at 14% 0%, rgba(0,143,69,.08), transparent 28rem),
        radial-gradient(circle at 88% 8%, rgba(255,204,0,.13), transparent 22rem),
        #f6f8f3;
}

.about-hero,
.distributor-hero,
.seller-hero,
.partners-hero,
.brands-hero,
.products-hero,
.brand-experience-hero {
    isolation: isolate;
}

.form-card,
.contact-form,
.contact-card,
.distributor-form-card,
.seller-form-card,
.filters-panel,
.brand-story-copy,
.brand-empty,
.rpp-product-card,
.brand-card,
.product-card,
.partner-card {
    border: 1px solid rgba(7,28,20,.10)!important;
    border-radius: 24px!important;
    background: rgba(255,255,255,.94)!important;
    box-shadow: 0 16px 42px rgba(7,28,20,.08)!important;
}

.form-card input,
.form-card select,
.form-card textarea,
.contact-form input,
.contact-form select,
.contact-form textarea,
.distributor-form-card input,
.distributor-form-card select,
.distributor-form-card textarea,
.seller-form-card input,
.seller-form-card select,
.seller-form-card textarea,
.filters-panel input,
.filters-panel select,
.filters-panel textarea {
    min-height: 50px;
    border: 1px solid rgba(7,28,20,.12)!important;
    border-radius: 16px!important;
    background: #f8faf7!important;
    color: #071c14!important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease;
}

.form-card input:focus,
.form-card select:focus,
.form-card textarea:focus,
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus,
.distributor-form-card input:focus,
.distributor-form-card select:focus,
.distributor-form-card textarea:focus,
.seller-form-card input:focus,
.seller-form-card select:focus,
.seller-form-card textarea:focus,
.filters-panel input:focus,
.filters-panel select:focus,
.filters-panel textarea:focus {
    border-color: var(--rpp-yellow)!important;
    background: #fff!important;
    box-shadow: 0 0 0 4px rgba(255,204,0,.16)!important;
    outline: 0;
    transform: translateY(-1px);
}

.btn,
.btn-main,
.btn-secondary,
.btn-banner,
.btn-cta,
.form-card button,
.contact-form button,
.distributor-form-card button,
.seller-form-card button,
.filters-panel button {
    border-radius: 16px!important;
}

[data-rpp-home] .rpp-hero-next::after,
.brand-experience-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,204,0,.72), transparent);
}

.rpp-reveal,
.reveal-item {
    will-change: transform, opacity;
}
