body,html {
    overflow-x:hidden
}
.hero-title,.nav-link,.scroll-indicator {
    text-transform:uppercase
}
.gradient-text,.gradient-text-animated,.loading-text,.stat-number {
    -webkit-text-fill-color:transparent
}
.btn-ripple,.carousel-animating,.cursor-dot,.cursor-outline {
    pointer-events:none
}
.certificacao-card,.comparativo-col,.cta-content,.diferencial-card,.form-note,.info-card,.no-products,.no-products-filter,.produtos-vazio,.section-header,.stat-box,.stat-item {
    text-align:center
}
:root {
    --color-primary:#e74c3c;
    --color-primary-dark:#c0392b;
    --color-primary-light:#ff6b5a;
    --color-secondary:#f39c12;
    --color-accent:#27ae60;
    --color-bg-dark:#0a0a0a;
    --color-bg-darker:#050505;
    --color-bg-light:#1a1a1a;
    --color-bg-card:#151515;
    --color-text-primary:#ffffff;
    --color-text-secondary:#b0b0b0;
    --color-text-muted:#666666;
    --color-border:rgba(255, 255, 255, 0.1);
    --color-shadow:rgba(0, 0, 0, 0.5);
    --gradient-primary:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
    --gradient-dark:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%);
    --gradient-overlay:linear-gradient(135deg, rgba(231,76,60,0.1) 0%, rgba(243,156,18,0.1) 100%);
    --font-primary:'Rajdhani',sans-serif;
    --font-secondary:'Roboto',sans-serif;
    --spacing-xs:0.5rem;
    --spacing-sm:1rem;
    --spacing-md:2rem;
    --spacing-lg:4rem;
    --spacing-xl:6rem;
    --transition-fast:0.2s ease;
    --transition-base:0.3s ease;
    --transition-slow:0.5s ease;
    --border-radius:12px;
    --border-radius-sm:8px;
    --border-radius-lg:20px;
    --box-shadow:0 10px 40px rgba(0, 0, 0, 0.3);
    --box-shadow-hover:0 15px 60px rgba(231, 76, 60, 0.3)
}
.feature-item i,.footer-legal-links a:hover,.logo-highlight,.nav-link:hover,.produto-name a:hover,.produto-specs i,.stat-item i,.total-produtos i {
    color:var(--color-primary)
}
* {
    margin:0;
    padding:0;
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    font-family:var(--font-secondary);
    background:linear-gradient(45deg,rgba(0,0,0,.05) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.05) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.05) 75%),linear-gradient(-45deg,transparent 75%,rgba(0,0,0,.05) 75%),radial-gradient(circle,#1a1a1a 0,#0a0a0a 100%);
    background-size:20px 20px,20px 20px,20px 20px,20px 20px,100% 100%;
    background-position:0 0,0 10px,10px -10px,-10px 0,center;
    background-attachment:fixed;
    color:var(--color-text-primary);
    line-height:1.6
}
img {
    max-width:100%;
    height:auto;
    display:block
}
a {
    text-decoration:none;
    color:inherit;
    transition:var(--transition-base)
}
ul {
    list-style:none
}
button {
    cursor:pointer;
    border:none;
    background:0 0;
    font-family:inherit
}
.container {
    max-width:1200px;
    margin:0 auto;
    padding:0 var(--spacing-md)
}
.hero-badge,.hero-title,.stat-item i {
    margin-bottom:var(--spacing-sm)
}
.gradient-text {
    background:var(--gradient-primary);
    -webkit-background-clip:text;
    background-clip:text
}
.section-dark {
    background-color:var(--color-bg-dark);
    padding:var(--spacing-xl) 0
}
.section-light {
    background-color:var(--color-bg-light);
    padding:var(--spacing-xl) 0
}
.navbar {
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1000;
    background:rgba(10,10,10,.95);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--color-border);
    transition:.4s cubic-bezier(.25, .46, .45, .94);
    box-shadow:0 2px 20px transparent
}
.hero,.nav-link {
    position:relative
}
.navbar.scrolled {
    background:rgba(5,5,5,.98);
    box-shadow:0 2px 20px rgba(0,0,0,.5),0 0 30px rgba(231,76,60,.1);
    border-bottom:1px solid rgba(231,76,60,.3)
}
.nav-container {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:.8rem var(--spacing-md)
}
.logo-container {
    display:flex;
    align-items:center;
    gap:.8rem
}
.logo-icon {
    width:50px;
    height:50px;
    object-fit:contain;
    filter:drop-shadow(0 0 15px rgba(231, 76, 60, .8));
    transition:.4s;
    animation:4s ease-in-out infinite float
}
.mobile-toggle span,.nav-link,.nav-link::after {
    transition:var(--transition-base)
}
.logo-icon:hover {
    filter:drop-shadow(0 0 25px rgba(231, 76, 60, 1));
    transform:scale(1.1) rotate(5deg)
}
.logo-text {
    font-family:var(--font-primary);
    font-size:1.5rem;
    font-weight:700;
    letter-spacing:2px
}
.hero-badge,.nav-link {
    font-weight:600;
    font-family:var(--font-primary)
}
.nav-menu {
    display:flex;
    gap:var(--spacing-md);
    align-items:center
}
.nav-link {
    font-size:1rem;
    letter-spacing:1px;
    padding:.5rem 1rem;
    border-radius:var(--border-radius-sm)
}
.nav-link::after {
    content:'';
    position:absolute;
    bottom:0;
    left:50%;
    transform:translateX(-50%);
    width:0;
    height:2px;
    background:var(--gradient-primary)
}
.nav-link.active::after,.nav-link:hover::after {
    width:80%
}
.mobile-toggle {
    display:none;
    flex-direction:column;
    gap:5px;
    padding:.5rem
}
.mobile-toggle span {
    width:25px;
    height:3px;
    background:var(--color-primary);
    border-radius:2px
}
.hero {
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:6rem 0 4rem;
    overflow:hidden
}
.hero-bg,.hero-overlay {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0
}
.hero-bg {
    filter:brightness(0.65);
    z-index:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    transition:background-image 1.5s ease-in-out
}
.hero-overlay {
    background:var(--gradient-overlay);
    z-index:1
}
.hero-content {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--spacing-lg);
    align-items:center
}
.hero-badge {
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.5rem 1rem;
    background:rgba(231,76,60,.2);
    border:1px solid var(--color-primary);
    border-radius:50px;
    font-size:.85rem;
    letter-spacing:2px
}
.hero-title {
    font-family:var(--font-primary);
    font-size:4rem;
    font-weight:700;
    line-height:1.1;
    letter-spacing:3px
}
.hero-features,.hero-subtitle {
    margin-bottom:var(--spacing-md)
}
.hero-subtitle {
    font-size:1.2rem;
    color:var(--color-text-primary);
    line-height:1.8
}
.hero-features {
    display:flex;
    gap:var(--spacing-md);
    flex-wrap:wrap
}
.feature-item {
    display:flex;
    align-items:center;
    gap:.5rem;
    padding:.75rem 1.2rem;
    background:rgba(255,255,255,.2);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius-sm);
    font-family:var(--font-primary);
    font-weight:600;
    transition:var(--transition-base)
}
.btn-primary,.scroll-line,.showcase-badge {
    background:var(--gradient-primary)
}
.feature-item:hover {
    background:rgba(231,76,60,.1);
    border-color:var(--color-primary);
    transform:translateY(-2px)
}
.feature-item i {
    font-size:1.2rem
}
.filtros-left,.hero-cta {
    display:flex;
    gap:var(--spacing-sm);
    flex-wrap:wrap
}
.product-showcase {
    position:relative;
    animation:6s ease-in-out infinite float
}
.product-main,.sobre-img-main,.uso-img-main {
    width:100%;
    border-radius:var(--border-radius-lg);
    box-shadow:var(--box-shadow)
}
.btn,.showcase-badge {
    border-radius:var(--border-radius-sm);
    font-family:var(--font-primary);
    font-weight:700
}
.showcase-badge {
    position:absolute;
    padding:.5rem 1rem;
    font-size:.8rem;
    letter-spacing:1px;
    box-shadow:0 5px 20px rgba(231,76,60,.5);
    animation:2s ease-in-out infinite pulse
}
.badge-1 {
    top:10%;
    right:-10%
}
.badge-2 {
    bottom:15%;
    left:-10%
}
@keyframes float {
    0%,100% {
        transform:translateY(0)
    }
    50% {
        transform:translateY(-20px)
    }
}
@keyframes pulse {
    0%,100% {
        transform:scale(1)
    }
    50% {
        transform:scale(1.05)
    }
}
.scroll-indicator {
    position:absolute;
    bottom:2rem;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:.5rem;
    color:var(--color-text-secondary);
    font-size:.85rem;
    letter-spacing:2px;
    z-index:2
}
.btn,.btn-icon {
    align-items:center;
    transition:var(--transition-base)
}
.btn,.stat-label {
    letter-spacing:1px;
    text-transform:uppercase
}
.scroll-line {
    width:2px;
    height:40px;
    animation:2s ease-in-out infinite scrollDown
}
@keyframes scrollDown {
    0% {
        height:0;
        opacity:0
    }
    50% {
        height:40px;
        opacity:1
    }
    100% {
        height:40px;
        opacity:0
    }
}
.btn {
    display:inline-flex;
    gap:.5rem;
    padding:1rem 2rem;
    font-size:1rem;
    cursor:pointer;
    border:2px solid transparent
}
.btn-primary {
    color:#fff;
    box-shadow:0 5px 20px rgba(231,76,60,.3)
}
.sobre-badge,.uso-badge {
    bottom:2rem;
    box-shadow:0 10px 40px rgba(231,76,60,.5)
}
.btn-primary:hover {
    transform:translateY(-3px);
    box-shadow:0 8px 30px rgba(231,76,60,.5)
}
.btn-secondary {
    background:0 0;
    color:var(--color-text-primary);
    border-color:var(--color-primary)
}
.btn-secondary:hover {
    background:var(--color-primary);
    transform:translateY(-3px)
}
.btn-sm {
    padding:.6rem 1.2rem;
    font-size:.9rem
}
.btn-block {
    justify-content:center
}
.btn-icon {
    width:45px;
    height:45px;
    display:flex;
    justify-content:center;
    background:var(--gradient-primary);
    border-radius:50%
}
.btn-icon:hover,.whatsapp-float:hover {
    transform:scale(1.1)
}
.stats-section {
    background:var(--color-bg-darker);
    padding:var(--spacing-lg) 0;
    border-top:1px solid var(--color-border);
    border-bottom:1px solid var(--color-border)
}
.stats-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:var(--spacing-md)
}
.stat-item {
    padding:var(--spacing-md);
    background:rgba(255,255,255,.02);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius);
    transition:var(--transition-base)
}
.stat-item:hover {
    background:rgba(231,76,60,.1);
    border-color:var(--color-primary);
    transform:translateY(-5px)
}
.stat-item i {
    font-size:2.5rem
}
.stat-number {
    font-family:var(--font-primary);
    font-size:3rem;
    font-weight:700;
    background:var(--gradient-primary);
    -webkit-background-clip:text;
    background-clip:text;
    margin-bottom:.5rem
}
.section-badge,.uso-item:hover {
    background:rgba(231,76,60,.1)
}
.stat-label {
    font-size:.9rem;
    color:var(--color-text-secondary)
}
.section-header {
    margin-bottom:var(--spacing-lg)
}
.section-badge,.section-title {
    margin-bottom:var(--spacing-sm);
    letter-spacing:2px;
    font-family:var(--font-primary)
}
.section-badge {
    display:inline-block;
    padding:.5rem 1rem;
    border:1px solid var(--color-primary);
    border-radius:50px;
    font-size:.85rem;
    font-weight:600;
    color:var(--color-primary)
}
.section-title {
    font-size:3rem;
    font-weight:700;
    text-transform:uppercase
}
.section-subtitle {
    font-size:1.1rem;
    color:var(--color-text-secondary);
    max-width:600px;
    margin:0 auto
}
.info-cards,.produtos-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:var(--spacing-md)
}
@media (max-width:600px) {
    .produtos-grid {
        grid-template-columns:repeat(2,1fr);
        gap:var(--spacing-sm)
    }
}
.produto-card {
    background:var(--color-bg-card);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius);
    transition:var(--transition-base)
}
.produto-card:hover {
    transform:translateY(-10px);
    box-shadow:var(--box-shadow-hover);
    border-color:var(--color-primary)
}
.info-card:hover,.uso-item:hover {
    transform:translateX(10px)
}
.produto-image {
    background:var(--color-bg-darker)
}
.produto-image img {
    object-fit:cover;
    transition:var(--transition-slow)
}
.produto-badge {
    background:var(--gradient-primary);
    border-radius:var(--border-radius-sm);
    font-family:var(--font-primary)
}
.diferencial-card,.info-card {
    background:var(--color-bg-card)
}
.produto-overlay {
    display:flex;
    align-items:center;
    justify-content:center;
    transition:var(--transition-base)
}
.produto-info {
    padding:var(--spacing-md)
}
.produto-name {
    font-family:var(--font-primary);
    text-transform:uppercase;
    letter-spacing:1px
}
.footer-newsletter p,.produto-desc {
    color:var(--color-text-secondary);
    margin-bottom:var(--spacing-sm)
}
.produto-features {
    display:flex;
    flex-direction:column;
    gap:.5rem;
    margin-bottom:var(--spacing-sm);
    padding:var(--spacing-sm) 0;
    border-top:1px solid var(--color-border);
    border-bottom:1px solid var(--color-border)
}
.produto-features span {
    display:flex;
    align-items:center;
    gap:.5rem;
    color:var(--color-text-secondary)
}
.comparativo-col .fa-check-circle,.produto-features i,.valor-lista li i {
    color:var(--color-accent)
}
.produto-footer {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:var(--spacing-sm)
}
.price-old {
    color:var(--color-text-muted)
}
.price-current {
    font-family:var(--font-primary);
    color:var(--color-primary)
}
.diferencial-card p,.uso-description {
    color:var(--color-text-secondary);
    line-height:1.8
}
.diferenciais-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:var(--spacing-md)
}
.diferencial-card {
    padding:var(--spacing-md);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius)
}
.diferencial-icon,.uso-badge {
    background:var(--gradient-primary)
}
.diferencial-icon {
    width:80px;
    height:80px;
    margin:0 auto var(--spacing-sm);
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-size:2rem
}
.uso-description,.uso-list {
    margin-bottom:var(--spacing-md)
}
.diferencial-card h3 {
    font-family:var(--font-primary);
    font-size:1.3rem;
    margin-bottom:var(--spacing-sm);
    text-transform:uppercase;
    letter-spacing:1px
}
.sobre-content,.uso-content {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--spacing-lg);
    align-items:center
}
.artesao-image,.filtro-btn[data-tooltip],.form-group,.sobre-images,.uso-images {
    position:relative
}
.uso-badge {
    position:absolute;
    right:-2rem;
    padding:1rem 1.5rem;
    border-radius:var(--border-radius);
    display:flex;
    align-items:center;
    gap:.8rem
}
.comparativo-col i,.sobre-badge i,.uso-badge i {
    font-size:1.5rem
}
.sobre-badge span,.uso-badge span {
    font-family:var(--font-primary);
    font-weight:700;
    letter-spacing:1px
}
.uso-description {
    font-size:1.05rem
}
.uso-list {
    display:flex;
    flex-direction:column;
    gap:var(--spacing-sm)
}
.sobre-founder,.uso-item {
    align-items:center;
    display:flex
}
.uso-item {
    gap:.8rem;
    padding:.8rem;
    background:rgba(255,255,255,.02);
    border-left:3px solid var(--color-primary);
    border-radius:var(--border-radius-sm);
    transition:var(--transition-base)
}
.info-card:hover,.social-link:hover {
    border-color:var(--color-primary)
}
.info-card,.sobre-founder {
    border:1px solid var(--color-border)
}
.uso-item i {
    color:var(--color-accent);
    font-size:1.2rem
}
.sobre-description {
    color:var(--color-text-secondary);
    margin-bottom:var(--spacing-sm);
    line-height:1.8;
    font-size:1.05rem
}
.sobre-founder {
    gap:var(--spacing-sm);
    margin-top:var(--spacing-md);
    padding:var(--spacing-sm);
    background:rgba(255,255,255,.05);
    border-radius:var(--border-radius)
}
.footer-brand p,.social-links {
    margin-top:var(--spacing-sm)
}
.founder-avatar,.sobre-badge,.social-link:hover {
    background:var(--gradient-primary)
}
.founder-avatar {
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.5rem
}
.founder-info,.pi-text-wrapper,.produto-price {
    display:flex;
    flex-direction:column
}
.founder-info strong {
    font-family:var(--font-primary);
    font-size:1.1rem;
    margin-bottom:.2rem
}
.founder-info span,.info-card p {
    color:var(--color-text-secondary);
    font-size:.9rem
}
.sobre-badge {
    position:absolute;
    left:-2rem;
    padding:1rem 1.5rem;
    border-radius:var(--border-radius);
    display:flex;
    align-items:center;
    gap:.8rem
}
.contato-form,.contato-info {
    flex-direction:column
}
.contato-content {
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:var(--spacing-lg)
}
.contato-info {
    display:flex;
    gap:var(--spacing-md)
}
.contato-form,.social-links {
    display:flex;
    gap:var(--spacing-sm)
}
.info-card {
    padding:var(--spacing-md);
    border-radius:var(--border-radius);
    transition:var(--transition-base)
}
.form-group input,.form-group select,.form-group textarea,.social-link {
    border:1px solid var(--color-border);
    background:var(--color-bg-card);
    transition:var(--transition-base)
}
.info-card i {
    color:var(--color-primary);
    margin-bottom:var(--spacing-sm)
}
.info-card h3 {
    font-family:var(--font-primary);
    font-size:1.2rem;
    margin-bottom:.5rem;
    text-transform:uppercase;
    letter-spacing:1px
}
.info-card p,.produtos-vazio p {
    color:var(--color-text-secondary)
}
.social-link {
    display:flex;
    align-items:center;
    justify-content:center
}
.form-group input,.form-group select,.form-group textarea {
    border-radius:var(--border-radius-sm);
    color:var(--color-text-primary);
    font-family:var(--font-secondary)
}
.counter.counting,.footer-links a:hover,.form-group i {
    color:var(--color-primary)
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus {
    border-color:var(--color-primary);
    background:rgba(231,76,60,.05)
}
.footer,.footer-bottom {
    border-top:1px solid var(--color-border)
}
.form-group i {
    position:absolute;
    left:1rem;
    top:50%;
    transform:translateY(-50%);
    font-size:1.1rem
}
.footer-bottom,.footer-brand p,.footer-links a {
    color:var(--color-text-secondary)
}
.form-group textarea {
    resize:vertical;
    resize:vertical;
    min-height:120px
}
.form-group textarea+i {
    top:1.2rem;
    transform:none
}
.footer {
    background:var(--color-bg-darker);
    padding:var(--spacing-lg) 0 var(--spacing-md)
}
.footer-content {
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:var(--spacing-lg);
    margin-bottom:var(--spacing-md)
}
.footer-brand p {
    line-height:1.8
}
.footer-links h4,.footer-newsletter h4 {
    font-family:var(--font-primary);
    font-size:1.2rem;
    margin-bottom:var(--spacing-sm);
    text-transform:uppercase;
    letter-spacing:1px
}
.footer-links ul {
    display:flex;
    flex-direction:column;
    gap:.8rem
}
.footer-links a {
    transition:var(--transition-base)
}
.footer-links a:hover {
    padding-left:10px
}
.newsletter-form {
    display:flex;
    gap:.5rem
}
.newsletter-form input {
    flex:1;
    padding:.8rem;
    background:var(--color-bg-card);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius-sm);
    color:var(--color-text-primary)
}
.newsletter-form button {
    padding:.8rem 1.2rem;
    background:var(--gradient-primary);
    border-radius:var(--border-radius-sm);
    color:#fff;
    transition:var(--transition-base)
}
.newsletter-form button:hover,.produto-card-modern:hover .produto-image-modern img {
    transform:scale(1.05)
}
.footer-bottom {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-top:var(--spacing-md)
}
.scroll-top,.whatsapp-float {
    position:fixed;
    bottom:2rem;
    display:flex;
    color:#fff;
    z-index:999;
    transition:var(--transition-base);
    border-radius:50%
}
.payment-methods {
    display:flex;
    gap:var(--spacing-sm);
    font-size:1.5rem
}
.whatsapp-float {
    right:2rem;
    width:60px;
    height:60px;
    background:linear-gradient(135deg,#25d366 0,#128c7e 100%);
    align-items:center;
    justify-content:center;
    font-size:2rem;
    box-shadow:0 5px 20px rgba(37,211,102,.5);
    animation:2s ease-in-out infinite pulse
}
.scroll-top {
    right:6rem;
    width:50px;
    height:50px;
    background:var(--gradient-primary);
    align-items:center;
    justify-content:center;
    font-size:1.2rem;
    box-shadow:0 5px 20px rgba(231,76,60,.5);
    opacity:0;
    visibility:hidden
}
.scroll-top.visible {
    opacity:1;
    visibility:visible
}
.scroll-top:hover {
    transform:translateY(-5px)
}
@media (max-width:992px) {
    .produtos-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .hero-content,.sobre-content,.uso-content {
        grid-template-columns:1fr;
        gap:var(--spacing-md)
    }
    .hero-title {
        font-size:3rem
    }
    .section-title {
        font-size:2.5rem
    }
    .contato-content,.footer-content {
        grid-template-columns:1fr
    }
}
@media (max-width:768px) {
    .nav-menu {
        position:fixed;
        top:70px;
        left:-100%;
        width:100%;
        height:calc(100vh - 70px);
        background:rgba(10,10,10,.98);
        backdrop-filter:blur(10px);
        flex-direction:column;
        justify-content:flex-start;
        padding:var(--spacing-md);
        transition:var(--transition-base)
    }
    .nav-menu.active {
        left:0
    }
    .mobile-toggle {
        display:flex
    }
    .mobile-toggle.active span:first-child {
        transform:rotate(45deg) translate(5px,5px)
    }
    .mobile-toggle.active span:nth-child(2) {
        opacity:0
    }
    .mobile-toggle.active span:nth-child(3) {
        transform:rotate(-45deg) translate(7px,-6px)
    }
    .hero-title {
        font-size:2.5rem
    }
    .section-title {
        font-size:2rem
    }
    .diferenciais-grid,.produtos-grid {
        grid-template-columns:1fr
    }
    .hero-cta {
        flex-direction:column
    }
    .btn {
        width:100%;
        justify-content:center
    }
    .sobre-badge,.uso-badge {
        position:static;
        margin-top:var(--spacing-sm);
        width:fit-content
    }
}
.cursor-dot,.loading-screen {
    position:fixed;
    z-index:9999
}
.fas.fa-shield-check {
    font-family:'Font Awesome 5 Free','Font Awesome 6 Free';
    font-weight:900;
    display:inline-block!important;
    font-size:1em!important
}
.artesao-nome,.loading-text,.page-title,.stat-box .stat-number,.valor-titulo {
    font-family:var(--font-primary)
}
.loading-screen {
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:var(--color-bg-darker);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:opacity .5s,visibility .5s
}
.loading-screen.hidden {
    opacity:0;
    visibility:hidden
}
.loading-logo {
    width:150px;
    height:150px;
    animation:2s ease-in-out infinite logoReveal
}
@keyframes logoReveal {
    0%,100% {
        transform:scale(1) rotate(0);
        opacity:1
    }
    50% {
        transform:scale(1.1) rotate(5deg);
        opacity:.8
    }
}
.loading-text {
    position:absolute;
    bottom:30%;
    font-size:1.5rem;
    font-weight:700;
    letter-spacing:3px;
    background:var(--gradient-primary);
    -webkit-background-clip:text;
    background-clip:text;
    animation:1.5s ease-in-out infinite textPulse
}
.btn,.hero-title {
    position:relative
}
@keyframes textPulse {
    0%,100% {
        opacity:.5
    }
    50% {
        opacity:1
    }
}
@keyframes heroReveal {
    from {
        opacity:0;
        transform:translateY(50px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
.hero-text>* {
    animation:1s ease-out backwards heroReveal
}
.hero-text>:first-child {
    animation-delay:.2s
}
.hero-text>:nth-child(2) {
    animation-delay:.4s
}
.hero-text>:nth-child(3) {
    animation-delay:.6s
}
.hero-text>:nth-child(4) {
    animation-delay:.8s
}
.hero-text>:nth-child(5) {
    animation-delay:1s
}
.hero-title {
    animation:5s infinite glitchText
}
@keyframes glitchText {
    0%,100%,90% {
        text-shadow:0 0 0 transparent
    }
    91% {
        text-shadow:2px 2px 0 var(--color-primary),-2px -2px 0 var(--color-secondary)
    }
    93% {
        text-shadow:-2px 2px 0 var(--color-primary),2px -2px 0 var(--color-secondary)
    }
}
.btn {
    overflow:hidden;
    transform:perspective(1px) translateZ(0);
    transition:.4s cubic-bezier(.25, .46, .45, .94)
}
.btn::before {
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:0;
    height:0;
    border-radius:50%;
    background:rgba(255,255,255,.3);
    transform:translate(-50%,-50%);
    transition:width .6s,height .6s
}
.image-reveal::after,.produto-card::before {
    width:100%;
    position:absolute;
    top:0;
    content:''
}
.btn:hover::before,.filtro-btn:hover::before {
    width:300px;
    height:300px
}
.btn:hover {
    transform:translateY(-5px) scale(1.05);
    box-shadow:0 20px 50px rgba(231,76,60,.6)
}
.btn-ripple {
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,.6);
    transform:scale(0);
    animation:.6s ease-out ripple
}
@keyframes ripple {
    to {
        transform:scale(4);
        opacity:0
    }
}
.produto-card {
    transform-style:preserve-3d
}
.produto-card:hover {
    transform:translateY(-20px) rotateX(5deg) rotateY(5deg) scale(1.05);
    box-shadow:0 30px 80px rgba(231,76,60,.4)
}
.produto-card::before {
    left:-100%;
    height:100%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);
    transition:left .5s
}
.produto-card:hover::before {
    left:100%
}
.reveal {
    opacity:0;
    transform:translateY(80px);
    transition:1s cubic-bezier(.25, .46, .45, .94)
}
.reveal-stagger.active>*,.reveal.active {
    opacity:1;
    transform:translateY(0)
}
.reveal-stagger>* {
    opacity:0;
    transform:translateY(30px);
    transition:.6s
}
.reveal-stagger.active>:first-child {
    transition-delay:0.1s
}
.reveal-stagger.active>:nth-child(2) {
    transition-delay:0.2s
}
.reveal-stagger.active>:nth-child(3) {
    transition-delay:0.3s
}
.reveal-stagger.active>:nth-child(4) {
    transition-delay:0.4s
}
.reveal-stagger.active>:nth-child(5) {
    transition-delay:0.5s
}
.reveal-stagger.active>:nth-child(6) {
    transition-delay:0.6s
}
.parallax-layer {
    transition:transform .5s cubic-bezier(.25, .46, .45, .94)
}
.gradient-text-animated {
    background:linear-gradient(45deg,var(--color-primary),var(--color-secondary),var(--color-accent),var(--color-primary));
    background-size:300% 300%;
    -webkit-background-clip:text;
    background-clip:text;
    animation:3s infinite gradientShift
}
@keyframes gradientShift {
    0%,100% {
        background-position:0 50%
    }
    50% {
        background-position:100% 50%
    }
}
.icon-float {
    animation:3s ease-in-out infinite iconFloat
}
@keyframes iconFloat {
    0%,100% {
        transform:translateY(0) rotate(0)
    }
    50% {
        transform:translateY(-15px) rotate(5deg)
    }
}
.icon-spin-hover {
    transition:transform .6s cubic-bezier(.68, -.55, .265, 1.55)
}
.icon-spin-hover:hover {
    transform:rotate(360deg) scale(1.2)
}
.icon-bounce {
    animation:2s ease-in-out infinite iconBounce
}
@keyframes iconBounce {
    0%,100%,20%,50%,80% {
        transform:translateY(0)
    }
    40% {
        transform:translateY(-20px)
    }
    60% {
        transform:translateY(-10px)
    }
}
.image-reveal {
    position:relative;
    overflow:hidden
}
.image-reveal::after {
    left:0;
    height:100%;
    background:var(--gradient-primary);
    transform:translateX(-100%);
    transition:transform .8s cubic-bezier(.77, 0, .175, 1)
}
.image-reveal.active::after {
    transform:translateX(100%)
}
.image-reveal img {
    transform:scale(1.2);
    transition:transform 1s cubic-bezier(.77, 0, .175, 1)
}
.image-reveal.active img {
    transform:scale(1)
}
.cursor-dot {
    width:8px;
    height:8px;
    background:var(--color-primary);
    border-radius:50%;
    transition:transform .15s
}
.scroll-progress,.section-divider {
    background:var(--gradient-primary)
}
#scrollTop,.cursor-outline {
    position:fixed;
    z-index:9998
}
.cursor-outline {
    width:40px;
    height:40px;
    border:2px solid var(--color-primary);
    border-radius:50%;
    transition:.15s
}
.cursor-outline.active {
    transform:scale(1.5);
    background:rgba(231,76,60,.1)
}
.scroll-progress {
    position:fixed;
    top:0;
    left:0;
    width:0%;
    height:4px;
    z-index:9999;
    transition:width .1s
}
.counter,.glow-on-hover {
    transition:.3s
}
.section-divider {
    width:100%;
    height:2px;
    position:relative;
    overflow:hidden
}
.section-divider::after {
    content:'';
    position:absolute;
    top:0;
    left:-100%;
    width:50%;
    height:100%;
    background:rgba(255,255,255,.5);
    animation:3s ease-in-out infinite dividerShine
}
@keyframes dividerShine {
    0% {
        left:-100%
    }
    100%,50% {
        left:200%
    }
}
.badge-pulse {
    animation:2s ease-in-out infinite badgePulse
}
@keyframes badgePulse {
    0%,100% {
        transform:scale(1);
        box-shadow:0 0 0 0 rgba(231,76,60,.7)
    }
    50% {
        transform:scale(1.05);
        box-shadow:0 0 0 10px rgba(231,76,60,0)
    }
}
.typewriter {
    overflow:hidden;
    border-right:3px solid var(--color-primary);
    white-space:nowrap;
    animation:3.5s steps(40,end) typing,.75s step-end infinite blink-caret
}
@keyframes typing {
    from {
        width:0
    }
    to {
        width:100%
    }
}
@keyframes blink-caret {
    from,to {
        border-color:transparent
    }
    50% {
        border-color:var(--color-primary)
    }
}
.counter {
    font-variant-numeric:tabular-nums
}
.counter.counting {
    transform:scale(1.1)
}
.shape-morph {
    animation:8s ease-in-out infinite morphShape
}
@keyframes morphShape {
    0%,100% {
        border-radius:60% 40% 30% 70%/60% 30% 70% 40%
    }
    50% {
        border-radius:30% 60% 70% 40%/50% 60% 30%
    }
}
.glow-on-hover:hover {
    box-shadow:0 0 20px var(--color-primary),0 0 40px var(--color-primary),0 0 60px var(--color-primary);
    border-color:var(--color-primary)
}
.text-glow {
    text-shadow:0 0 10px var(--color-primary),0 0 20px var(--color-primary),0 0 30px var(--color-primary)
}
.slide-in-left {
    animation:.8s ease-out slideInLeft
}
.slide-in-right {
    animation:.8s ease-out slideInRight
}
.slide-in-bottom {
    animation:.8s ease-out slideInBottom
}
@keyframes slideInLeft {
    from {
        opacity:0;
        transform:translateX(-100px)
    }
    to {
        opacity:1;
        transform:translateX(0)
    }
}
@keyframes slideInRight {
    from {
        opacity:0;
        transform:translateX(100px)
    }
    to {
        opacity:1;
        transform:translateX(0)
    }
}
@keyframes slideInBottom {
    from {
        opacity:0;
        transform:translateY(100px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
.blur-in {
    animation:1s ease-out blurToFocus
}
@keyframes blurToFocus {
    from {
        filter:blur(20px);
        opacity:0
    }
    to {
        filter:blur(0);
        opacity:1
    }
}
.scale-in {
    animation:.6s cubic-bezier(.25,.46,.45,.94) scaleIn
}
@keyframes scaleIn {
    from {
        opacity:0;
        transform:scale(.8)
    }
    to {
        opacity:1;
        transform:scale(1)
    }
}
.rotate-in {
    animation:.8s ease-out rotateIn
}
@keyframes rotateIn {
    from {
        opacity:0;
        transform:rotate(-180deg) scale(.5)
    }
    to {
        opacity:1;
        transform:rotate(0) scale(1)
    }
}
.flip-in {
    animation:.8s ease-out flipIn
}
@keyframes flipIn {
    from {
        transform:perspective(400px) rotateY(90deg);
        opacity:0
    }
    to {
        transform:perspective(400px) rotateY(0);
        opacity:1
    }
}
.bounce-in {
    animation:1s cubic-bezier(.68,-.55,.265,1.55) bounceIn
}
@keyframes bounceIn {
    0% {
        opacity:0;
        transform:scale(.3)
    }
    50% {
        opacity:1;
        transform:scale(1.05)
    }
    70% {
        transform:scale(.9)
    }
    100% {
        transform:scale(1)
    }
}
.fade-in {
    animation:1s ease-in fadeIn
}
.fade-in-up {
    animation:.8s ease-out fadeInUp
}
.fade-in-down {
    animation:.8s ease-out fadeInDown
}
@keyframes fadeIn {
    from {
        opacity:0
    }
    to {
        opacity:1
    }
}
@keyframes fadeInUp {
    from {
        opacity:0;
        transform:translateY(30px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
@keyframes fadeInDown {
    from {
        opacity:0;
        transform:translateY(-30px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
.shake {
    animation:.5s ease-in-out shake
}
@keyframes shake {
    0%,100% {
        transform:translateX(0)
    }
    10%,30%,50%,70%,90% {
        transform:translateX(-10px)
    }
    20%,40%,60%,80% {
        transform:translateX(10px)
    }
}
.wave {
    animation:2s ease-in-out infinite wave
}
@keyframes wave {
    0%,100% {
        transform:rotate(0)
    }
    25% {
        transform:rotate(15deg)
    }
    75% {
        transform:rotate(-15deg)
    }
}
.certificacao-card,.stat-box,.valor-card {
    transition:var(--transition-base)
}
.page-hero {
    padding:150px 0 80px;
    background:linear-gradient(135deg,rgba(231,76,60,.1) 0,rgba(243,156,18,.1) 100%);
    border-bottom:1px solid var(--color-border)
}
.page-hero-content,.produtos-hero-content {
    text-align:center;
    max-width:800px;
    margin:0 auto
}
.page-badge {
    display:inline-block;
    padding:8px 20px;
    background:rgba(231,76,60,.2);
    border:1px solid var(--color-primary);
    border-radius:30px;
    font-size:.85rem;
    font-weight:600;
    letter-spacing:2px;
    margin-bottom:20px;
    color:var(--color-primary-light)
}
.comparativo-table,.stat-box {
    border-radius:var(--border-radius)
}
.page-subtitle,.sobre-texto {
    color:var(--color-text-secondary)
}
.page-title {
    font-size:clamp(2rem, 5vw, 3.5rem);
    font-weight:700;
    line-height:1.2;
    margin-bottom:20px
}
.page-subtitle {
    font-size:clamp(1rem, 2vw, 1.25rem);
    line-height:1.6
}
.diferencial-lista,.valor-lista {
    list-style:none;
    margin-top:15px
}
.diferencial-lista li,.valor-lista li {
    padding:8px 0;
    color:var(--color-text-secondary);
    display:flex;
    align-items:center;
    gap:10px
}
.diferencial-lista li i {
    color:var(--color-accent);
    font-size:.9rem
}
.artesao-section,.certificacoes-section,.comparativo-section,.contato-section,.processo-section,.sobre-section,.valores-section {
    padding:40px 0
}
.comparativo-table {
    max-width:900px;
    margin:50px auto 0;
    background:var(--color-bg-card);
    overflow:hidden;
    border:1px solid var(--color-border)
}
.comparativo-header,.comparativo-row {
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:1px;
    background:var(--color-border)
}
.badge-bushcraft,.badge-digital,.badge-elite,.badge-rescue,.badge-special,.badge-urban,.comparativo-header {
    background:var(--gradient-primary)
}
.artesao-placeholder,.comparativo-col,.stat-box,.valor-card {
    background:var(--color-bg-card)
}
.comparativo-col {
    padding:20px;
    display:flex;
    align-items:center;
    justify-content:center
}
.comparativo-header .comparativo-col {
    background:rgba(0,0,0,.3);
    font-weight:600
}
.comparativo-col:first-child {
    justify-content:flex-start;
    text-align:left
}
.comparativo-col.highlight {
    background:linear-gradient(135deg,rgba(231,76,60,.15) 0,rgba(243,156,18,.15) 100%)
}
.comparativo-col .fa-times-circle {
    color:#e74c3c;
    opacity:.5
}
.comparativo-col .fa-crown {
    color:var(--color-secondary);
    font-size:1rem;
    margin-right:8px
}
.sobre-grid {
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:60px;
    align-items:start
}
.sobre-texto {
    font-size:1.1rem;
    line-height:1.8;
    margin-bottom:20px
}
.form-row,.sobre-stats {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px
}
.stat-box {
    padding:30px 20px;
    border:1px solid var(--color-border)
}
.certificacao-card:hover,.stat-box:hover,.valor-card:hover {
    border-color:var(--color-primary);
    transform:translateY(-5px)
}
.stat-box .stat-number {
    font-size:3rem;
    font-weight:700;
    color:var(--color-primary);
    line-height:1
}
.stat-box .stat-label {
    font-size:.9rem;
    color:var(--color-text-secondary);
    margin-top:10px
}
.valores-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px;
    margin-top:50px
}
.valor-card {
    padding:40px 30px;
    border-radius:var(--border-radius);
    border:1px solid var(--color-border)
}
.certificacao-card i,.valor-icon {
    font-size:3rem;
    color:var(--color-primary);
    margin-bottom:20px
}
.valor-titulo {
    font-size:1.5rem;
    margin-bottom:15px
}
.processo-texto,.valor-texto {
    color:var(--color-text-secondary);
    line-height:1.7
}
.artesao-content {
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:60px;
    align-items:center
}
.artesao-placeholder {
    aspect-ratio:1;
    border:3px solid var(--color-primary);
    align-items:center;
    justify-content:center;
    color:var(--color-primary);
    opacity:.3
}
.artesao-badge {
    display:inline-block;
    padding:6px 16px;
    background:rgba(231,76,60,.2);
    border:1px solid var(--color-primary);
    border-radius:20px;
    font-size:.75rem;
    font-weight:600;
    letter-spacing:2px;
    margin-bottom:15px
}
.artesao-nome {
    font-size:2.5rem;
    margin-bottom:10px
}
.artesao-titulo {
    color:var(--color-primary);
    font-size:1.1rem;
    margin-bottom:25px
}
.artesao-bio {
    color:var(--color-text-secondary);
    line-height:1.8;
    margin-bottom:20px
}
.artesao-certificacoes {
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-top:30px
}
.certificacao-item {
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 20px;
    background:var(--color-bg-card);
    border:1px solid var(--color-border);
    border-radius:30px;
    font-size:.9rem
}
.info-icon,.processo-number {
    height:60px;
    align-items:center
}
.certificacao-item i {
    color:var(--color-secondary)
}
.processo-timeline {
    max-width:900px;
    margin:50px auto 0;
    position:relative
}
.processo-timeline::before {
    content:'';
    position:absolute;
    left:30px;
    top:0;
    bottom:0;
    width:2px;
    background:linear-gradient(180deg,var(--color-primary) 0,var(--color-secondary) 100%)
}
.processo-step {
    display:grid;
    grid-template-columns:60px 1fr;
    gap:30px;
    margin-bottom:40px;
    position:relative
}
.certificacao-card h3,.processo-titulo {
    margin-bottom:10px;
    font-family:var(--font-primary)
}
.processo-number {
    width:60px;
    background:var(--gradient-primary);
    border-radius:50%;
    display:flex;
    justify-content:center;
    font-family:var(--font-primary);
    font-size:1.5rem;
    font-weight:700;
    border:3px solid var(--color-bg-dark);
    z-index:1
}
.certificacao-card,.processo-content {
    border-radius:var(--border-radius);
    background:var(--color-bg-card)
}
.processo-content {
    padding:25px 30px;
    border:1px solid var(--color-border)
}
.processo-titulo {
    font-size:1.3rem
}
.certificacoes-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px;
    margin-top:50px
}
.certificacao-card {
    padding:40px 30px;
    border:1px solid var(--color-border)
}
.certificacao-card h3 {
    font-size:1.2rem
}
.certificacao-card p {
    color:var(--color-text-secondary);
    font-size:.95rem
}
.contato-grid {
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:60px
}
.form-title {
    font-family:var(--font-primary);
    font-size:2rem;
    margin-bottom:30px
}
.contato-form {
    background:var(--color-bg-card);
    padding:40px;
    border-radius:var(--border-radius);
    border:1px solid var(--color-border)
}
.form-group {
    margin-bottom:15px
}
.form-group label {
    display:block;
    margin-bottom:8px;
    font-weight:500;
    color:var(--color-text-primary)
}
.form-group input,.form-group select,.form-group textarea {
    width:100%;
    padding:14px 18px;
    background:var(--color-bg-dark);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius-sm);
    color:var(--color-text-primary);
    font-family:inherit;
    font-size:1rem;
    transition:var(--transition-base)
}
.faq-item p,.info-content p {
    color:var(--color-text-secondary)
}
.info-content h4,.info-title {
    font-family:var(--font-primary)
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.ordenacao-select:focus {
    outline:0;
    border-color:var(--color-primary);
    box-shadow:0 0 0 3px rgba(231,76,60,.1)
}
.btn-block {
    width:100%;
    padding:16px;
    font-size:1.1rem
}
.form-note {
    margin-top:15px;
    font-size:.85rem;
    color:var(--color-text-muted)
}
.alert {
    padding:20px;
    border-radius:var(--border-radius-sm);
    margin-bottom:30px;
    display:flex;
    align-items:start;
    gap:15px
}
.alert i {
    font-size:1.5rem;
    margin-top:2px
}
.alert-success {
    background:rgba(39,174,96,.1);
    border:1px solid var(--color-accent);
    color:var(--color-accent)
}
.alert-error,.info-link:hover {
    color:var(--color-primary-light)
}
.alert-error {
    background:rgba(231,76,60,.1);
    border:1px solid var(--color-primary)
}
.faq-item,.info-title {
    border-bottom:1px solid var(--color-border)
}
.contato-info {
    display:flex;
    flex-direction:column;
    gap:30px
}
.info-card {
    background:var(--color-bg-card);
    padding:30px;
    border-radius:var(--border-radius);
    border:1px solid var(--color-border)
}
.info-title {
    font-size:1.4rem;
    margin-bottom:25px;
    padding-bottom:15px
}
.info-icon,.social-link {
    background:rgba(231,76,60,.1);
    font-size:1.5rem;
    color:var(--color-primary)
}
.info-item {
    display:grid;
    grid-template-columns:60px 1fr;
    gap:20px;
    margin-bottom:25px
}
.info-item:last-child {
    margin-bottom:0
}
.info-icon {
    width:60px;
    border-radius:50%;
    display:flex;
    justify-content:center
}
.info-content h4 {
    font-size:1.1rem;
    margin-bottom:5px
}
.info-content p {
    font-size:.95rem;
    margin:3px 0
}
.info-link {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--color-primary);
    font-weight:500;
    margin-top:8px;
    transition:var(--transition-fast)
}
.info-link:hover {
    gap:12px
}
.faq-item {
    margin-bottom:20px;
    padding-bottom:20px
}
.faq-item:last-child {
    margin-bottom:0;
    padding-bottom:0;
    border-bottom:none
}
.faq-item h4 {
    font-size:1rem;
    margin-bottom:8px;
    display:flex;
    align-items:center;
    gap:10px
}
.faq-item h4 i {
    color:var(--color-primary);
    font-size:.9rem
}
.faq-item p {
    font-size:.95rem;
    margin-left:25px
}
.social-card .social-links {
    display:flex;
    gap:15px
}
#scrollTop,.artesao-placeholder i,.produto-card-modern.hidden-by-filter {
    display:none
}
.social-link {
    width:50px;
    height:50px;
    border:1px solid var(--color-border);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:var(--transition-base)
}
.social-link:hover {
    background:var(--gradient-primary);
    border-color:var(--color-primary);
    transform:translateY(-3px);
    color:#fff
}
.produtos-filtros-section,.produtos-hero {
    border-bottom:1px solid var(--color-border)
}
@media (max-width:992px) {
    .artesao-content,.contato-grid,.sobre-grid {
        grid-template-columns:1fr;
        gap:40px
    }
    .sobre-stats {
        grid-template-columns:repeat(2,1fr)
    }
    .comparativo-header,.comparativo-row {
        grid-template-columns:1.5fr 1fr 1fr
    }
    .comparativo-col {
        padding:15px 10px;
        font-size:.9rem
    }
}
@media (max-width:768px) {
    .produto-card:hover {
        transform:translateY(-10px) scale(1.02)
    }
    .cursor-dot,.cursor-outline {
        display:none
    }
    .form-row,.valores-grid {
        grid-template-columns:1fr
    }
    .page-hero {
        padding:120px 0 60px
    }
    .form-row {
        gap:0
    }
    .sobre-stats {
        grid-template-columns:1fr 1fr
    }
    .processo-timeline::before {
        left:20px
    }
    .processo-step {
        grid-template-columns:40px 1fr;
        gap:20px
    }
    .processo-number {
        width:40px;
        height:40px;
        font-size:1.2rem
    }
    .processo-content {
        padding:20px
    }
    .artesao-placeholder {
        font-size:6rem
    }
}
.artesao-placeholder {
    width:100%;
    aspect-ratio:1;
    border-radius:50%;
    background:url("/images/artesao.webp") center/cover no-repeat;
    opacity:1;
    font-size:0;
    display:block
}
.produtos-hero {
    padding:140px 0 60px;
    background:linear-gradient(135deg,rgba(231,76,60,.1) 0,rgba(243,156,18,.1) 100%)
}
.produtos-filtros-section {
    padding:30px 0;
    background:var(--color-bg-darker)
}
.produtos-controles {
    display:flex;
    align-items:center;
    gap:30px;
    flex-wrap:wrap
}
.filtros-group,.ordenacao-group {
    display:flex;
    align-items:center;
    gap:10px
}
.filtros-group label,.ordenacao-group label {
    font-weight:600;
    color:var(--color-text-secondary);
    white-space:nowrap
}
.filtros-group select,.ordenacao-group select {
    padding:10px 15px;
    background:var(--color-bg-card);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius-sm);
    color:var(--color-text-primary);
    font-family:inherit;
    font-size:.95rem;
    cursor:pointer;
    transition:var(--transition-base);
    min-width:150px
}
.btn-comprar-modern,.no-products h3,.preco-atual-modern,.produto-titulo-modern,.produtos-info .info-item h4 {
    font-family:var(--font-primary)
}
.filtros-group select:focus,.filtros-group select:hover,.ordenacao-group select:focus,.ordenacao-group select:hover {
    border-color:var(--color-primary);
    outline:0
}
.total-produtos {
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--color-text-secondary);
    font-weight:500
}
.produtos-carousel-section,.produtos-grid-section {
    padding:30px 0 40px;
    background:var(--color-bg-dark)
}
.produtos-grid-modern {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
    gap:30px
}
.produto-card-modern {
    background:#1a1a1a;
    border-radius:16px;
    overflow:hidden;
    transition:transform .3s,box-shadow .3s;
    position:relative;
    display:flex;
    flex-direction:column
}
.produto-card-modern:hover,.produtos-carousel-track .produto-card-modern:hover {
    transform:translateY(-5px);
    box-shadow:0 20px 40px rgba(0,0,0,.4)
}
.carousel-btn,.carousel-nav-btn {
    transform:translateY(-50%);
    top:50%
}
.produto-badge-modern {
    position:absolute;
    top:15px;
    left:15px;
    background:#ff6b35;
    color:#fff;
    padding:8px 16px;
    border-radius:6px;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.5px;
    text-transform:uppercase;
    z-index:10;
    box-shadow:0 4px 12px rgba(255,107,53,.4)
}
.produto-image-modern {
    width:100%;
    aspect-ratio:16/11;
    overflow:hidden;
    position:relative
}
.produto-image-modern img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .5s
}
.produto-info-modern {
    padding:25px;
    display:flex;
    flex-direction:column;
    gap:15px;
    flex:1
}
.produto-titulo-modern {
    font-size:1.5rem;
    font-weight:700;
    color:#fff;
    letter-spacing:.5px;
    text-transform:uppercase;
    margin:0;
    line-height:1.2
}
.btn-comprar-modern,.filtro-btn {
    letter-spacing:1px;
    text-transform:uppercase
}
.produto-descricao-modern {
    color:#999;
    font-size:.95rem;
    line-height:1.5;
    margin:0
}
.produto-features-modern {
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:15px 0;
    border-top:1px solid rgba(255,255,255,.1);
    border-bottom:1px solid rgba(255,255,255,.1)
}
.feature-item-modern {
    display:flex;
    align-items:center;
    gap:10px;
    color:#ccc;
    font-size:.9rem
}
.feature-item-modern i {
    color:#27ae60;
    font-size:.85rem;
    flex-shrink:0
}
.produto-precos-modern {
    display:flex;
    align-items:baseline;
    gap:12px;
    margin-top:auto
}
.preco-antigo-modern {
    font-size:.9rem;
    color:#666;
    text-decoration:line-through
}
.preco-atual-modern {
    font-size:2rem;
    font-weight:700;
    color:#ff6b35;
    line-height:1
}
.btn-comprar-modern {
    width:100%;
    padding:16px;
    background:#ff6b35;
    color:#fff;
    border:none;
    border-radius:8px;
    font-size:1rem;
    font-weight:700;
    cursor:pointer;
    transition:.3s;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    text-decoration:none
}
.btn-comprar-modern:hover {
    background:#ff8559;
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(255,107,53,.4)
}
.btn-comprar-modern i {
    font-size:1.1rem
}
.produtos-info-section {
    padding:50px 0;
    background:var(--color-bg-darker);
    border-top:1px solid var(--color-border)
}
.produtos-info {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px
}
.produtos-info .info-item {
    display:flex;
    align-items:center;
    gap:15px;
    padding:20px;
    background:var(--color-bg-card);
    border-radius:var(--border-radius-sm);
    border:1px solid var(--color-border)
}
.produtos-info .info-item i {
    font-size:2rem;
    color:var(--color-primary);
    flex-shrink:0
}
.produtos-info .info-item h4 {
    font-size:1rem;
    margin-bottom:5px;
    color:var(--color-text-primary)
}
.produtos-info .info-item p {
    font-size:.85rem;
    color:var(--color-text-secondary);
    margin:0
}
.no-products {
    padding:80px 20px
}
.no-products i {
    font-size:5rem;
    color:var(--color-text-muted);
    margin-bottom:20px
}
.no-products h3 {
    font-size:2rem;
    margin-bottom:15px
}
.filtro-btn,.no-products-filter h3 {
    font-family:var(--font-primary, 'Rajdhani', sans-serif)
}
.no-products p {
    color:var(--color-text-secondary);
    margin-bottom:30px
}
@media (max-width:992px) {
    .produtos-grid-modern {
        grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
        gap:25px
    }
    .produtos-controles {
        gap:20px
    }
    .total-produtos {
        margin-left:0;
        width:100%
    }
}
@media (max-width:768px) {
    .produtos-hero {
        padding:120px 0 50px
    }
    .produtos-filtros-section {
        padding:20px 0
    }
    .produtos-controles {
        flex-direction:column;
        align-items:stretch;
        gap:15px
    }
    .filtros-group,.ordenacao-group {
        flex-direction:column;
        align-items:stretch;
        gap:8px
    }
    .filtros-group label,.ordenacao-group label {
        font-size:.85rem
    }
    .filtros-group select,.ordenacao-group select {
        width:100%
    }
    .produtos-grid-modern {
        grid-template-columns:1fr;
        gap:25px
    }
    .produto-info-modern {
        padding:20px
    }
    .produto-titulo-modern {
        font-size:1.3rem
    }
    .preco-atual-modern {
        font-size:1.75rem
    }
    .produtos-info {
        grid-template-columns:1fr;
        gap:15px
    }
}
@media print {
    .btn-comprar-modern,.produtos-filtros-section,.produtos-info-section {
        display:none
    }
    .produto-card-modern {
        break-inside:avoid
    }
}
.produtos-carousel-wrapper {
    display:flex;
    transition:transform .5s ease-in-out;
    gap:30px
}
.carousel-btn,.carousel-dot {
    cursor:pointer;
    transition:.3s
}
.produtos-carousel-track {
    display:flex;
    gap:30px
}
.carousel-btn {
    position:absolute;
    width:50px;
    height:50px;
    background:rgba(231,76,60,.9);
    border:none;
    border-radius:50%;
    color:#fff;
    font-size:1.5rem;
    z-index:10;
    display:flex;
    align-items:center;
    justify-content:center
}
.carousel-btn:hover {
    background:#e74c3c;
    transform:translateY(-50%) scale(1.1);
    box-shadow:0 8px 20px rgba(231,76,60,.4)
}
.carousel-btn:active,.carousel-nav-btn:active {
    transform:translateY(-50%) scale(.95)
}
.carousel-btn-prev {
    left:0
}
.carousel-btn-next {
    right:0
}
.carousel-btn:disabled {
    opacity:.3;
    cursor:not-allowed
}
.carousel-btn:disabled:hover,.carousel-nav-btn:disabled:hover {
    transform:translateY(-50%);
    box-shadow:none
}
.carousel-indicators {
    justify-content:center;
    gap:10px
}
.carousel-dot {
    width:12px;
    height:12px;
    border-radius:50%;
    background:rgba(255,255,255,.3);
    border:2px solid rgba(255,255,255,.5)
}
.carousel-dot:hover {
    background:rgba(255,255,255,.5);
    transform:scale(1.2)
}
.carousel-dot.active {
    background:#ff6b35;
    border-color:#ff6b35;
    transform:scale(1.3)
}
@media (max-width:1400px) {
    .produtos-carousel-container {
        padding:0 50px
    }
    .carousel-btn {
        width:45px;
        height:45px;
        font-size:1.3rem
    }
}
@media (max-width:992px) {
    .produtos-carousel-container {
        padding:0 40px
    }
    .carousel-btn {
        width:40px;
        height:40px;
        font-size:1.2rem
    }
    .produtos-carousel-track,.produtos-carousel-wrapper {
        gap:20px
    }
}
@media (max-width:768px) {
    .produtos-carousel-container {
        padding:0 35px
    }
    .carousel-btn {
        width:35px;
        height:35px;
        font-size:1rem
    }
    .carousel-btn-prev {
        left:-5px
    }
    .carousel-btn-next {
        right:-5px
    }
}
@media (max-width:480px) {
    :root {
        --spacing-lg:3rem;
        --spacing-xl:4rem
    }
    .hero-title {
        font-size:2rem
    }
    .section-title {
        font-size:1.8rem
    }
    .stat-number {
        font-size:2.5rem
    }
    .whatsapp-float {
        bottom:1rem;
        right:1rem;
        width:50px;
        height:50px
    }
    .scroll-top {
        display:none
    }
    .comparativo-header,.comparativo-row,.sobre-stats {
        grid-template-columns:1fr
    }
    .comparativo-col:not(:first-child) {
        border-top:1px solid var(--color-border)
    }
    .artesao-certificacoes {
        flex-direction:column
    }
    .social-card .social-links {
        justify-content:center
    }
    .produto-card-modern {
        border-radius:12px
    }
    .produto-badge-modern {
        top:10px;
        left:10px;
        padding:6px 12px;
        font-size:.7rem
    }
    .produto-info-modern {
        padding:18px;
        gap:12px
    }
    .produto-titulo-modern {
        font-size:1.2rem
    }
    .produto-descricao-modern {
        font-size:.9rem
    }
    .feature-item-modern {
        font-size:.85rem
    }
    .preco-atual-modern {
        font-size:1.6rem
    }
    .btn-comprar-modern {
        padding:14px;
        font-size:.95rem
    }
    .produtos-carousel-container {
        padding:0 30px
    }
    .carousel-btn {
        width:30px;
        height:30px;
        font-size:.9rem
    }
    .carousel-btn-prev {
        left:-10px
    }
    .carousel-btn-next {
        right:-10px
    }
    .carousel-dot {
        width:10px;
        height:10px
    }
}
.carousel-dragging {
    cursor:grabbing;
    user-select:none
}
.carousel-dragging .produtos-carousel-track,.carousel-dragging .produtos-carousel-wrapper {
    transition:none
}
.carousel-loading,.produtos-grid-modern.filtering {
    opacity:.5;
    pointer-events:none
}
.produtos-carousel-section {
    background:var(--color-bg-dark);
    overflow:hidden
}
.produtos-carousel-container,.produtos-carousel-wrapper {
    overflow:hidden;
    position:relative
}
.produtos-carousel-track {
    display:flex;
    flex-wrap:nowrap;
    transition:transform .5s cubic-bezier(.25, .46, .45, .94)
}
.produtos-carousel-container .produtos-carousel-track .produto-card-modern {
    flex:0 0 calc((100% - 60px)/ 4)!important;
    width:calc((100% - 60px)/ 4)!important;
    max-width:calc((100% - 60px)/ 4)!important;
    min-width:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    height:auto!important
}
.produtos-carousel-container .produtos-carousel-track .produto-image-modern {
    width:100%!important;
    aspect-ratio:16/11!important;
    overflow:hidden!important;
    background:#0a0a0a;
    position:relative
}
.produtos-carousel-container .produtos-carousel-track .produto-image-modern img {
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center
}
.produtos-carousel-container .produtos-carousel-track .produto-card-modern .produto-info-modern {
    flex:1!important;
    display:flex!important;
    flex-direction:column!important
}
.produtos-carousel-track .produto-badge-modern {
    right:15px
}
.carousel-nav-btn {
    position:absolute;
    width:60px;
    height:60px;
    background:rgba(255,107,53,.95);
    border:none;
    border-radius:50%;
    color:#fff;
    font-size:1.8rem;
    cursor:pointer;
    z-index:10;
    transition:.3s;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 20px rgba(255,107,53,.3)
}
.carousel-nav-btn:hover {
    background:#ff6b35;
    transform:translateY(-50%) scale(1.1);
    box-shadow:0 6px 30px rgba(255,107,53,.5)
}
.carousel-nav-btn:disabled {
    opacity:.3;
    cursor:not-allowed;
    background:rgba(255,255,255,.1)
}
.carousel-nav-btn.prev {
    left:10px
}
.carousel-nav-btn.next {
    right:10px
}
.carousel-indicators {
    justify-content:center;
    gap:12px;
    margin-top:40px
}
.carousel-indicator {
    width:14px;
    height:14px;
    border-radius:50%;
    background:rgba(255,255,255,.2);
    border:2px solid rgba(255,255,255,.3);
    cursor:pointer;
    transition:.3s;
    padding:0
}
.carousel-indicator:hover {
    background:rgba(255,255,255,.4);
    transform:scale(1.2)
}
.carousel-indicator.active {
    background:#ff6b35;
    border-color:#ff6b35;
    transform:scale(1.3);
    box-shadow:0 0 10px rgba(255,107,53,.5)
}
@media (max-width:1400px) {
    .produtos-carousel-container .produtos-carousel-track .produto-card-modern {
        flex:0 0 calc((100% - 40px)/ 3)!important;
        width:calc((100% - 40px)/ 3)!important;
        max-width:calc((100% - 40px)/ 3)!important
    }
    .produtos-carousel-container {
        padding:0 70px
    }
    .carousel-nav-btn {
        width:55px;
        height:55px;
        font-size:1.6rem
    }
}
@media (max-width:992px) {
    .produtos-carousel-container .produtos-carousel-track .produto-card-modern {
        flex:0 0 calc((100% - 20px)/ 2)!important;
        width:calc((100% - 20px)/ 2)!important;
        max-width:calc((100% - 20px)/ 2)!important
    }
    .produtos-carousel-container {
        padding:0 60px
    }
    .carousel-nav-btn {
        width:50px;
        height:50px;
        font-size:1.4rem
    }
    .carousel-nav-btn.prev {
        left:5px
    }
    .carousel-nav-btn.next {
        right:5px
    }
}
@media (max-width:768px) {
    .produtos-carousel-container .produtos-carousel-track .produto-card-modern {
        flex:0 0 100%!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important
    }
    .produtos-carousel-container {
        padding:0 50px
    }
    .carousel-nav-btn {
        width:45px;
        height:45px;
        font-size:1.2rem
    }
    .carousel-indicator {
        width:12px;
        height:12px
    }
}
.carousel-dragging {
    cursor:grabbing
}
.produtos-filtros-visuais {
    display:flex;
    justify-content:center;
    gap:15px;
    margin:40px 0;
    flex-wrap:wrap
}
.filtro-btn {
    border:2px solid rgba(255,255,255,.3);
    border-radius:30px;
    color:#fff;
    position:relative;
    overflow:hidden
}
.filtro-btn::before {
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:0;
    height:0;
    border-radius:50%;
    background:rgba(255,107,53,.2);
    transform:translate(-50%,-50%);
    transition:width .3s,height .3s
}
.produto-card,.produto-image {
    position:relative;
    overflow:hidden
}
.filtro-btn:hover {
    border-color:#ff6b35;
    color:#ff6b35
}
.filtro-btn.active {
    background:#ff6b35;
    border-color:#ff6b35;
    box-shadow:0 8px 20px rgba(255,107,53,.4)
}
.filtro-btn.active::before {
    width:0;
    height:0
}
.filtro-contador {
    display:inline-block;
    margin-left:8px;
    padding:2px 8px;
    background:rgba(255,255,255,.2);
    border-radius:12px;
    font-size:.85rem
}
.filtro-btn.active .filtro-contador {
    background:rgba(0,0,0,.2)
}
.produtos-grid-modern {
    transition:opacity .3s
}
.no-products-filter {
    padding:60px 20px;
    grid-column:1/-1
}
.no-products-filter i {
    font-size:4rem;
    color:rgba(255,255,255,.3);
    margin-bottom:20px
}
.no-products-filter h3 {
    font-size:1.8rem;
    margin-bottom:10px;
    color:#fff
}
.no-products-filter p {
    color:rgba(255,255,255,.6)
}
.feature-item-modern.dynamic {
    animation:.3s fadeInUp
}
@keyframes fadeInUp {
    from {
        opacity:0;
        transform:translateY(10px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
@media (max-width:480px) {
    .produtos-carousel-container {
        padding:0 40px
    }
    .carousel-nav-btn {
        width:40px;
        height:40px;
        font-size:1rem
    }
    .carousel-nav-btn.prev {
        left:0
    }
    .carousel-nav-btn.next {
        right:0
    }
    .carousel-indicators {
        margin-top:30px;
        gap:8px
    }
    .carousel-indicator {
        width:10px;
        height:10px
    }
    .produtos-filtros-visuais {
        flex-direction:column;
        align-items:stretch
    }
    .filtro-btn {
        width:100%;
        text-align:center
    }
}
.filtro-btn[data-tooltip]:hover::after {
    content:attr(data-tooltip);
    position:absolute;
    bottom:100%;
    left:50%;
    transform:translateX(-50%);
    padding:8px 12px;
    background:rgba(0,0,0,.9);
    color:#fff;
    font-size:.8rem;
    border-radius:6px;
    white-space:nowrap;
    margin-bottom:8px;
    z-index:100
}
.filtro-btn[data-tooltip]:hover::before {
    content:'';
    position:absolute;
    bottom:100%;
    left:50%;
    transform:translateX(-50%);
    border:6px solid transparent;
    border-top-color:rgba(0,0,0,.9);
    margin-bottom:2px;
    z-index:100
}
.filtro-btn.active,.filtro-btn:hover,.ordenacao-select:hover,.produto-card:hover {
    border-color:var(--color-primary)
}
.produtos-carousel-container {
    max-width:1600px;
    margin:0 auto;
    padding:0 40px
}
.produtos-carousel-wrapper {
    width:100%
}
.produtos-carousel-track {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    width:100%
}
.produtos-carousel-track .produto-card-modern {
    width:100%;
    display:flex;
    flex-direction:column;
    background:#1a1a1a;
    border-radius:16px;
    overflow:hidden;
    transition:transform .3s,box-shadow .3s
}
.produtos-carousel-track .produto-image-modern {
    width:100%;
    aspect-ratio:16/11;
    overflow:hidden;
    background:#0a0a0a;
    position:relative
}
.produtos-carousel-track .produto-image-modern img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
.produtos-carousel-track .produto-badge-modern {
    position:absolute;
    top:15px;
    left:15px;
    z-index:5
}
.produtos-carousel-track .produto-info-modern {
    flex:1;
    display:flex;
    flex-direction:column;
    padding:20px
}
.carousel-indicators,.carousel-nav-btn {
    display:none!important
}
@media (max-width:1400px) {
    .produtos-carousel-track {
        grid-template-columns:repeat(3,1fr)
    }
}
@media (max-width:992px) {
    .produtos-carousel-track {
        grid-template-columns:repeat(2,1fr)
    }
    .produtos-carousel-container {
        padding:0 30px
    }
}
@media (max-width:768px) {
    .produtos-filtros-visuais {
        gap:10px;
        margin:30px 0
    }
    .filtro-btn {
        padding:10px 20px;
        font-size:.9rem
    }
    .filtro-contador {
        display:none
    }
    .produtos-carousel-track {
        grid-template-columns:1fr
    }
    .produtos-carousel-container {
        padding:0 20px
    }
}
.produtos-filtros {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:var(--spacing-md);
    margin-bottom:var(--spacing-lg);
    padding:var(--spacing-md);
    background:rgba(255,255,255,.02);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius);
    flex-wrap:wrap
}
.filtro-btn,.ordenacao-select {
    background:rgba(255,255,255,.05);
    border:1px solid var(--color-border);
    font-size:.95rem;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
    font-family:var(--font-primary)
}
.filtro-btn {
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.75rem 1.2rem;
    border-radius:var(--border-radius-sm);
    color:var(--color-text-secondary);
    text-transform:uppercase;
    letter-spacing:.5px
}
.filtro-btn:hover {
    background:rgba(231,76,60,.1);
    color:var(--color-primary);
    transform:translateY(-2px)
}
.filtro-btn.active {
    background:var(--gradient-primary);
    color:#fff;
    box-shadow:0 5px 20px rgba(231,76,60,.3)
}
.filtro-btn i {
    font-size:1rem
}
.ordenacao-select {
    padding:.75rem 2.5rem .75rem 1rem;
    border-radius:var(--border-radius-sm);
    color:var(--color-text-primary);
    appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e74c3c' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 1rem center
}
.produto-badge,.produto-selo {
    left:1rem;
    padding:.4rem .8rem;
    z-index:2
}
.ordenacao-select:hover {
    background-color:rgba(231,76,60,.05)
}
.produtos-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:var(--spacing-md);
    margin-bottom:var(--spacing-lg)
}
@media (max-width:1400px) {
    .produtos-grid {
        grid-template-columns:repeat(3,1fr)
    }
}
@media (max-width:992px) {
    .produtos-grid {
        grid-template-columns:repeat(2,1fr);
        gap:var(--spacing-sm)
    }
    .info-cards {
        grid-template-columns:repeat(2,1fr)
    }
}
@media (max-width:768px) {
    .produtos-grid {
        grid-template-columns:repeat(2,1fr);
        gap:1rem
    }
}
@media (max-width:480px) {
    .produtos-grid {
        grid-template-columns:1fr
    }
}
.produto-card {
    background:var(--color-bg-card);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius);
    transition:.4s cubic-bezier(.25, .46, .45, .94)
}
.produto-card:hover {
    transform:translateY(-10px) scale(1.02);
    box-shadow:0 20px 60px rgba(231,76,60,.3)
}
.produto-image {
    height:280px;
    background:var(--color-bg-darker)
}
.produto-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s
}
.produto-card:hover .produto-image img {
    transform:scale(1.15)
}
.produto-badge {
    position:absolute;
    top:1rem;
    border-radius:var(--border-radius-sm);
    font-family:var(--font-primary);
    font-size:.7rem;
    font-weight:700;
    letter-spacing:1px;
    box-shadow:0 4px 15px rgba(0,0,0,.3)
}
.produto-desconto,.produto-overlay .btn-icon {
    width:50px;
    height:50px;
    display:flex;
    border-radius:50%
}
.badge-bestseller {
    background:linear-gradient(135deg,#e74c3c,#c0392b)
}
.badge-new {
    background:linear-gradient(135deg,#27ae60,#2ecc71)
}
.badge-kit {
    background:linear-gradient(135deg,#9b59b6,#8e44ad)
}
.badge-tactical {
    background:linear-gradient(135deg,#34495e,#2c3e50)
}
.badge-military {
    background:linear-gradient(135deg,#16a085,#1abc9c)
}
.badge-premium {
    background:linear-gradient(135deg,#f39c12,#e67e22)
}
.produto-desconto {
    position:absolute;
    top:1rem;
    right:1rem;
    align-items:center;
    justify-content:center;
    background:#e74c3c;
    font-family:var(--font-primary);
    font-size:.85rem;
    font-weight:700;
    color:#fff;
    z-index:2;
    box-shadow:0 4px 15px rgba(231,76,60,.5);
    animation:2s infinite pulse
}
.produto-estoque,.produto-selo {
    border-radius:var(--border-radius-sm)
}
.produto-selo {
    position:absolute;
    bottom:1rem;
    background:rgba(255,255,255,.95);
    color:#e74c3c;
    font-size:.7rem;
    font-weight:700;
    display:flex;
    align-items:center;
    gap:.4rem
}
.produto-overlay {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:rgba(0,0,0,.85);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1rem;
    opacity:0;
    transition:opacity .3s;
    z-index:3
}
.cta-section,.info-card,.produtos-vazio {
    background:rgba(255,255,255,.02)
}
.produto-card:hover .produto-overlay {
    opacity:1
}
.produto-overlay .btn-icon {
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#e74c3c;
    transition:.3s;
    text-decoration:none
}
.produto-overlay .btn-icon:hover {
    transform:scale(1.15) rotate(5deg);
    box-shadow:0 5px 20px rgba(255,255,255,.5)
}
.produto-overlay .btn-whatsapp {
    background:#25d366;
    color:#fff
}
.produto-info {
    padding:1.2rem
}
.produto-name {
    font-family:var(--font-primary);
    font-size:1.2rem;
    font-weight:700;
    margin-bottom:.5rem;
    text-transform:uppercase;
    letter-spacing:.5px;
    line-height:1.3
}
.produto-name a {
    color:var(--color-text-primary);
    text-decoration:none;
    transition:color .3s
}
.produto-desc,.produto-features span,.produto-specs,.rating-count {
    color:var(--color-text-secondary)
}
.produto-desc {
    font-size:.9rem;
    line-height:1.6;
    margin-bottom:1rem;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
.produto-features,.produto-specs {
    margin-bottom:.8rem;
    padding-bottom:.8rem;
    border-bottom:1px solid var(--color-border)
}
.produto-specs {
    display:flex;
    gap:1rem;
    font-size:.85rem
}
.produto-specs span {
    display:flex;
    align-items:center;
    gap:.4rem
}
.produto-features {
    display:flex;
    flex-direction:column;
    gap:.4rem
}
.produto-features span {
    display:flex;
    align-items:center;
    gap:.4rem;
    font-size:.8rem
}
.produto-features i {
    color:var(--color-accent);
    font-size:.75rem
}
.produto-rating {
    display:flex;
    align-items:center;
    gap:.3rem;
    margin-bottom:1rem;
    font-size:.9rem
}
.produto-rating i {
    color:#f39c12
}
.rating-count {
    font-size:.85rem;
    margin-left:.4rem
}
.price-old,.produtos-vazio i {
    color:var(--color-text-muted)
}
.produto-footer {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:1rem;
    margin-bottom:.8rem
}
.price-old {
    font-size:.85rem;
    text-decoration:line-through
}
.price-current {
    font-family:var(--font-primary);
    font-size:1.6rem;
    font-weight:700;
    color:var(--color-primary);
    line-height:1;
    margin:.2rem 0
}
.price-parcela {
    font-size:.75rem;
    color:var(--color-text-secondary)
}
.btn-comprar {
    white-space:nowrap
}
.produto-estoque {
    display:flex;
    align-items:center;
    gap:.4rem;
    font-size:.8rem;
    font-weight:600;
    padding:.4rem .8rem;
    margin-top:.8rem
}
.produto-estoque.disponivel {
    background:rgba(39,174,96,.1);
    color:#27ae60
}
.produto-estoque.indisponivel {
    background:rgba(231,76,60,.1);
    color:#e74c3c
}
.produtos-vazio {
    padding:var(--spacing-xl) var(--spacing-md);
    border:2px dashed var(--color-border);
    border-radius:var(--border-radius)
}
.produtos-vazio i {
    font-size:4rem;
    margin-bottom:var(--spacing-sm)
}
.produtos-vazio h3 {
    font-family:var(--font-primary);
    font-size:1.5rem;
    margin-bottom:.5rem
}
.produtos-vazio a {
    color:var(--color-primary);
    text-decoration:underline
}
.produtos-info-footer {
    margin-top:var(--spacing-lg);
    padding-top:var(--spacing-lg);
    border-top:1px solid var(--color-border)
}
@media (max-width:600px) {
    .info-cards {
        grid-template-columns:1fr
    }
}
.info-card {
    padding:var(--spacing-md);
    border:1px solid var(--color-border);
    border-radius:var(--border-radius);
    transition:.3s
}
.info-card:hover {
    background:rgba(231,76,60,.05);
    border-color:var(--color-primary);
    transform:translateY(-5px)
}
.info-card i {
    font-size:2.5rem;
    color:var(--color-primary);
    margin-bottom:1rem
}
.info-card h4 {
    font-family:var(--font-primary);
    font-size:1.1rem;
    margin-bottom:.5rem
}
.cta-content {
    padding:var(--spacing-lg)
}
.cta-content h2 {
    font-family:var(--font-primary);
    font-size:2.5rem;
    margin-bottom:1rem
}
.cta-content p {
    color:var(--color-text-secondary);
    font-size:1.1rem;
    margin-bottom:2rem;
    max-width:600px;
    margin-left:auto;
    margin-right:auto
}
.pi-section {
    padding:40px 0;
    background-color:#121212
}
.pi-container {
    max-width:1200px;
    margin:0 auto;
    padding:0 15px
}
.pi-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:20px
}
#scrollTop.visible,.pi-item {
    display:flex
}
.pi-item {
    align-items:center;
    gap:15px;
    background-color:#222;
    padding:20px;
    border-radius:12px;
    color:#fff;
    border:1px solid #333;
    transition:transform .3s,box-shadow .3s
}
.pi-item:hover {
    transform:translateY(-5px);
    box-shadow:0 8px 20px rgba(0,0,0,.4)
}
.pi-icon-wrapper i {
    font-size:2rem;
    color:#e53935;
    line-height:1
}
.pi-title {
    margin:0 0 5px;
    font-size:1rem;
    font-weight:700;
    color:#fff
}
.pi-subtitle {
    margin:0;
    font-size:.9rem;
    color:#ccc;
    line-height:1.4
}
@keyframes logoFadeInOut {
    0%,100%,65% {
        opacity:0;
        transform:scale(.95)
    }
    15%,50% {
        opacity:1;
        transform:scale(1)
    }
}
.hero-image .product-showcase img.product-main {
    animation:20s ease-in-out infinite logoFadeInOut;
    will-change:opacity,transform
}
.hero-image .product-showcase:hover img.product-main {
    animation-play-state:paused
}
@media (prefers-reduced-motion:reduce) {
    *,::after,::before {
        animation-duration:0s!important;
        animation-iteration-count:1!important;
        transition-duration:0s!important
    }
    .hero-image .product-showcase img.product-main {
        animation:none!important;
        opacity:1
    }
}
MAIS LENTO (12segundos): .hero-image .product-showcase img.product-main {
    animation-duration:12s
}
.footer-legal-links {
    margin-top:10px;
    font-size:.85rem
}
.footer-legal-links a {
    color:var(--color-text-secondary);
    text-decoration:none;
    transition:color .3s
}
a:focus,button:focus {
    outline:2px solid var(--primary-color);
    outline-offset:3px
}
.btn-primary,.btn-secondary,.nav-link {
    min-height:44px;
    display:inline-flex;
    align-items:center
}
#scrollTop {
    bottom:110px;
    right:20px;
    pointer-events:auto
}
@media (max-width:768px) {
    .produto-image {
        height:200px
    }
    .produto-info {
        padding:1rem
    }
    .produto-name {
        font-size:1rem
    }
    .produto-desc {
        font-size:.85rem;
        -webkit-line-clamp:1
    }
    .produto-specs {
        font-size:.75rem;
        gap:.5rem
    }
    .produto-features {
        display:none
    }
    .produto-rating {
        font-size:.8rem
    }
    .produto-footer {
        flex-direction:column;
        align-items:stretch;
        gap:.8rem
    }
    .price-old {
        font-size:.75rem
    }
    .price-current {
        font-size:1.4rem
    }
    .price-parcela {
        font-size:.7rem
    }
    .btn-comprar {
        width:100%;
        justify-content:center
    }
    .cta-content h2 {
        font-size:1.8rem
    }
    .produtos-filtros {
        flex-direction:column;
        align-items:stretch
    }
    .filtros-left,.filtros-right,.ordenacao-select {
        width:100%
    }
    .filtro-btn {
        flex:1;
        justify-content:center;
        font-size:.85rem;
        padding:.6rem .8rem
    }
    #scrollTop {
        bottom:110px
    }
}

.full-screen-hero {
    min-height: 100svh; /* melhor que 100vh no mobile */
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(
        circle at center,
        rgba(0,0,0,0.3) 0%,
        rgba(0,0,0,0.75) 10%
    );
    z-index: 1;
}

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


    /* ============================================================
       2. AJUSTES EXCLUSIVOS PARA TELEMÓVEL (MOBILE)
       ============================================================ */
    @media (max-width: 768px) {
        .hero-content { text-align: left; padding: 20px; }
        .hero-image, .scroll-indicator { display: none !important; }

        /* Tamanho do Título no Telemóvel */
        .hero-title { 
            font-size: 1.9rem !important; 
            line-height: 1.2;
        }

        .hero-badge {
            margin-top: 1px; /* Aumenta este valor para descer a badge */
            margin-bottom: 15px; /* Espaço entre a badge e o título principal */
            display: inline-block; /* Garante que a margem funcione corretamente */
        }
        /* Forçar alinhamento 2 a 2 (Lado a Lado) */
        .hero-features, .hero-cta {
            display: flex !important;
            flex-direction: row !important;
            flex-wrap: nowrap !important;
            gap: 10px !important;
        }

        /* Base comum para os 4 blocos (2 de features + 2 de botões) */
        .feature-item, .hero-cta .btn {
            flex: 1 !important;
            padding: 12px 5px !important;
            font-size: 0.75rem !important;
            justify-content: center;
            border-radius: 5px;
            white-space: nowrap;
            display: flex;
            align-items: center;
            text-align: center;
        }

        /* --- CORES NO TELEMÓVEL --- */

        /* Selos Técnicos (Fundo tático escuro) */
        .feature-item {
            background: rgba(0,0,0,0.6) !important;
            border: 1px solid rgba(76, 175, 80, 0.5) !important;
        }

        /* Botão PRODUTOS (Verde Original) */
        .hero-cta .btn-primary {
            background-color: #4caf50 !important;
            border: none !important;
            box-shadow: 0 4px 10px rgba(76, 175, 80, 0.3);
        }

        /* Botão WHATSAPP (Transparente/Borda Branca original) */
        .hero-cta .btn-secondary {
            background-color: rgba(255, 255, 255, 0.1) !important;
            border: 1px solid rgba(255, 255, 255, 0.4) !important;
        }
    }
