/*
Theme Name: Locafix
Theme URI: https://locafix.com.br
Author: Cleiton Damiani
Description: Tema WordPress exclusivo Locafix Locações
Version: 1.0
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 8.1
Text Domain: locafix

*/

:root{

--primary:#0B2E5B;

--secondary:#F58220;

--light:#ffffff;

--gray:#f5f5f5;

--radius:16px;

}

body{

font-family:Inter,sans-serif;

color:#222;

overflow-x:hidden;

}

/* HEADER */

#site-header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:9999;

transition:.35s;

}

/* TOPBAR */

.topbar{

background:#0B2E5B;

color:#fff;

font-size:.9rem;

padding:8px 0;

}

.topbar ul{

display:flex;

gap:25px;

margin:0;

padding:0;

list-style:none;

}

.topbar li{

display:flex;

align-items:center;

gap:8px;

}

/* MENU */

.navbar{

padding:18px 0;

background:rgba(255,255,255,.96);

backdrop-filter:blur(14px);

box-shadow:0 8px 30px rgba(0,0,0,.05);

transition:.35s;

}

.navbar-brand img{

max-height:60px;

}

.navbar-nav{

gap:18px;

}

.navbar-nav .menu-item{

position:relative;

}

.navbar-nav .nav-link{

font-weight:600;

color:#222;

padding:10px 0;

transition:.3s;

position:relative;

}

.navbar-nav .nav-link:hover{

color:#F58220;

}

.navbar-nav .nav-link::after{

content:"";

position:absolute;

bottom:0;

left:0;

width:0;

height:3px;

background:#F58220;

transition:.35s;

}

.navbar-nav .nav-link:hover::after{

width:100%;

}

/* BOTÃO */

.btn-whatsapp{

background:#F58220;

color:#fff;

padding:14px 28px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.btn-whatsapp:hover{

background:#d96f14;

transform:translateY(-3px);

color:#fff;

}

/* HEADER MENOR */

.header-scrolled .navbar{

padding:12px 0;

box-shadow:0 12px 30px rgba(0,0,0,.08);

}

.header-scrolled .navbar-brand img{

max-height:50px;

}


.hero{

position:relative;

overflow:hidden;

background:#fff;

padding-top:100px;

}

.hero-bg{

position:absolute;

inset:0;

background:

radial-gradient(circle at 80% 20%,rgba(245,130,32,.15),transparent 35%),

radial-gradient(circle at 10% 90%,rgba(11,46,91,.12),transparent 35%);

z-index:0;

}

.hero .container{

position:relative;

z-index:2;

}

.hero-label{

display:inline-block;

padding:.5rem 1rem;

background:#EEF5FF;

color:#0B2E5B;

font-weight:700;

border-radius:40px;

margin-bottom:25px;

}

.hero h1{

font-size:4rem;

font-weight:800;

line-height:1.1;

margin-bottom:25px;

}

.hero h1 span{

color:#F58220;

}

.hero p{

font-size:1.2rem;

max-width:500px;

color:#666;

margin-bottom:40px;

}

.hero-buttons{

display:flex;

gap:15px;

margin-bottom:35px;

}

.hero-search{

display:flex;

background:#fff;

border-radius:50px;

overflow:hidden;

box-shadow:0 20px 50px rgba(0,0,0,.08);

margin-bottom:35px;

}

.hero-search input{

flex:1;

padding:18px 25px;

border:none;

outline:none;

}

.hero-search button{

width:70px;

background:#F58220;

border:none;

color:#fff;

font-size:20px;

}

.hero-info{

display:flex;

gap:40px;

margin-top:20px;

}

.hero-info strong{

display:block;

font-size:28px;

color:#0B2E5B;

}

.hero-scene{

position:relative;

height:700px;

}

.equip{

position:absolute;

transition:transform .15s linear;

filter:drop-shadow(0 25px 25px rgba(0,0,0,.18));

}

.lavadora{

width:260px;

top:10px;

right:30px;

}

.serra{

width:220px;

left:90px;

top:90px;

}

.esmerilhadeira{

width:200px;

right:170px;

top:260px;

}

.furadeira{

width:250px;

left:20px;

bottom:40px;

}

.parafusadeira{

width:180px;

right:40px;

bottom:10px;

}


.home-categories{

padding:100px 0;

background:#f7f8fb;

}

.section-title{

margin-bottom:60px;

}

.subtitle{

display:inline-block;

padding:8px 18px;

background:#EEF5FF;

border-radius:30px;

font-weight:700;

color:#0B2E5B;

margin-bottom:15px;

}

.section-title h2{

font-size:42px;

font-weight:800;

margin-bottom:15px;

}

.section-title p{

max-width:650px;

margin:auto;

color:#666;

}

.category-card{

background:#fff;

border-radius:18px;

padding:40px 25px;

display:block;

text-align:center;

text-decoration:none;

position:relative;

overflow:hidden;

transition:.35s;

height:100%;

box-shadow:0 10px 35px rgba(0,0,0,.05);

}

.category-card:hover{

transform:translateY(-8px);

box-shadow:0 18px 40px rgba(0,0,0,.12);

}

.category-card::after{

content:"";

position:absolute;

bottom:0;

left:0;

height:5px;

width:0;

background:#F58220;

transition:.35s;

}

.category-card:hover::after{

width:100%;

}

.category-card .icon{

width:90px;

height:90px;

margin:auto;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:#EEF5FF;

margin-bottom:25px;

transition:.35s;

}

.category-card:hover .icon{

background:#F58220;

transform:scale(1.1);

}

.category-card i{

font-size:40px;

color:#0B2E5B;

transition:.35s;

}

.category-card:hover i{

color:#fff;

}

.category-card h3{

font-size:22px;

font-weight:700;

color:#222;

margin-bottom:10px;

}

.category-card small{

color:#888;

}

.catalogo{

padding:100px 0;

background:#fff;

}

.section-header{

text-align:center;

margin-bottom:60px;

}

.section-header span{

color:#F58220;

font-weight:700;

letter-spacing:2px;

}

.section-header h2{

font-size:44px;

font-weight:800;

margin-top:10px;

}

.produto-card{

background:#fff;

border-radius:20px;

overflow:hidden;

position:relative;

box-shadow:0 15px 40px rgba(0,0,0,.06);

transition:.35s;

height:100%;

display:flex;

flex-direction:column;

}

.produto-card:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.produto-badge{

position:absolute;

top:15px;

left:15px;

background:#0B2E5B;

color:#fff;

padding:8px 14px;

border-radius:30px;

font-size:.8rem;

z-index:5;

}

.produto-imagem{

height:260px;

display:flex;

align-items:center;

justify-content:center;

padding:20px;

background:#f7f8fb;

}

.produto-imagem img{

max-width:100%;

max-height:220px;

transition:.35s;

}

.produto-card:hover img{

transform:scale(1.08);

}

.produto-conteudo{

padding:25px;

display:flex;

flex-direction:column;

flex:1;

}

.produto-marca{

font-size:.85rem;

color:#777;

text-transform:uppercase;

margin-bottom:8px;

}

.produto-conteudo h3{

font-size:1.2rem;

font-weight:700;

min-height:58px;

}

.produto-conteudo h3 a{

color:#222;

text-decoration:none;

}

.produto-info{

margin:15px 0;

color:#555;

}

.produto-preco{

margin-top:auto;

}

.produto-preco small{

display:block;

color:#888;

}

.produto-preco strong{

display:block;

font-size:2rem;

color:#F58220;

}

.produto-buttons{

display:grid;

grid-template-columns:1fr 1fr;

gap:10px;

margin-top:20px;

}

.produto-buttons .btn{

border-radius:12px;

padding:12px;

font-weight:600;

}


.single-equipamento{

background:#f8f9fb;

}

.equipment-gallery{

background:#fff;

padding:20px;

border-radius:20px;

box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.main-image{

text-align:center;

margin-bottom:20px;

}

.main-image img{

max-height:420px;

object-fit:contain;

}

.thumbs{

display:flex;

gap:12px;

justify-content:center;

flex-wrap:wrap;

}

.gallery-thumb{

width:80px;

height:80px;

object-fit:cover;

cursor:pointer;

border-radius:10px;

border:2px solid transparent;

transition:.3s;

}

.gallery-thumb:hover{

border-color:#F58220;

}

.equipment-summary{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.brand{

color:#F58220;

font-weight:700;

text-transform:uppercase;

}

.prices{

list-style:none;

padding:0;

margin:30px 0;

}

.prices li{

display:flex;

justify-content:space-between;

padding:15px 0;

border-bottom:1px solid #eee;

}

.prices span{

font-size:1.5rem;

font-weight:700;

color:#0B2E5B;

}

.equipment-description,
.table{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 10px 30px rgba(0,0,0,.05);

}


.catalog-filters{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.06);

position:sticky;

top:120px;

}

.catalog-filters h4{

font-weight:700;

margin-bottom:25px;

}

.catalog-filters label{

font-weight:600;

margin-bottom:8px;

display:block;

}

.catalog-filters .form-control,
.catalog-filters .form-select{

border-radius:12px;

padding:12px 15px;

}