:root{
--primary:#fc6e02;
--secondary:#9a5700;
--dark:#111;
--light:#f5f7fb;
--surface:#fff;
--muted:#667085;
--line:#e6e8ef;
--radius:18px;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Inter,sans-serif;
}

html{scroll-behavior:smooth}

body{
background:var(--light);
color:#111;
padding-top:70px;
overflow-x:hidden;
}

a{text-decoration:none}
img{display:block;max-width:100%}

.container{
max-width:1240px;
margin:auto;
padding:0 20px;
}

/* MENU PADRÃO INDEX */
.menu{
position:fixed;
top:0;
left:0;
width:100%;
background:#000;
box-shadow:0 4px 20px rgba(0,0,0,.5);
z-index:1000;
border-bottom:2px solid var(--primary);
padding:0 30px;
}

.menu-content{
display:flex;
justify-content:space-between;
align-items:center;
max-width:1400px;
margin:0 auto;
height:70px;
gap:40px;
}

.logo{
display:flex;
align-items:center;
gap:10px;
text-decoration:none;
flex-shrink:0;
}

.logo img{
height:50px;
width:auto;
}

.menu nav{
display:flex;
gap:30px;
flex:1;
justify-content:center;
}

.menu nav a{
color:var(--primary);
font-weight:700;
font-size:15px;
text-decoration:none;
transition:.3s;
position:relative;
text-transform:uppercase;
letter-spacing:.5px;
}

.menu nav a::after{
content:"";
position:absolute;
bottom:-5px;
left:0;
width:0;
height:2px;
background:var(--primary);
transition:width .3s;
}

.menu nav a:hover::after{
width:100%;
}

.menu nav a:hover{
color:#fff;
}

.menu nav a.active{
color:#fff;
font-weight:900;
}

.menu-actions{
display:flex;
align-items:center;
gap:15px;
}

.btn-contato{
background:var(--primary);
color:#000;
padding:10px 24px;
border-radius:30px;
font-weight:700;
text-decoration:none;
transition:.3s;
display:inline-block;
text-transform:uppercase;
font-size:13px;
letter-spacing:.5px;
}

.btn-contato:hover{
background:#fff;
transform:translateY(-2px);
box-shadow:0 6px 15px rgba(252,110,2,.4);
}

.menu-btn{
width:40px;
height:40px;
border:none;
background:transparent;
display:none;
flex-direction:column;
justify-content:center;
gap:6px;
cursor:pointer;
}

.menu-btn span{
height:3px;
width:100%;
background:var(--primary);
border-radius:3px;
transition:.3s;
}

@media(max-width:1024px){
.menu-content{
gap:20px;
padding:0 20px;
}

.menu nav{
gap:20px;
}

.menu nav a{
font-size:14px;
}
}

@media(max-width:980px){
.menu{
padding:0 15px;
}

.menu-content{
height:60px;
gap:10px;
}

.logo img{
height:40px;
}

.menu nav{
position:absolute !important;
top:60px !important;
left:0 !important;
right:0 !important;
background:#000 !important;
flex-direction:column !important;
gap:0 !important;
width:100% !important;
padding:20px 0 !important;
display:none !important;
border-top:2px solid var(--primary) !important;
}

.menu nav.active,
.menu nav.show{
display:flex !important;
}

.menu-content{
position:relative;
}

.menu nav a{
padding:15px 20px;
border-bottom:1px solid rgba(252,110,2,.2);
text-align:left;
}

.menu nav a::after{
display:none;
}

.menu-actions,
.menu-btn,
#menu-toggle{
display:flex !important;
}

.menu-actions{
gap:10px;
}

.btn-contato{
padding:8px 16px;
font-size:12px;
}

.menu-btn{
display:flex;
order:3;
}
}

/* HERO */
.hero{
background:
radial-gradient(circle at top right,rgba(252,110,2,.22),transparent 34%),
radial-gradient(circle at bottom left,rgba(15,138,95,.18),transparent 32%),
linear-gradient(135deg,#101114,#191b20 62%,#251508);
color:#fff;
padding:82px 0 76px;
}

.hero-grid{
display:grid;
grid-template-columns:minmax(0,1.1fr) minmax(340px,.82fr);
gap:44px;
align-items:center;
}

.hero-badge{
display:inline-flex;
align-items:center;
gap:10px;
padding:10px 16px;
border-radius:999px;
background:rgba(252,110,2,.13);
border:1px solid rgba(252,110,2,.36);
font-weight:900;
font-size:13px;
letter-spacing:0;
margin-bottom:24px;
}

.hero-badge::before{
content:"";
width:9px;
height:9px;
border-radius:50%;
background:var(--primary);
box-shadow:0 0 0 5px rgba(252,110,2,.14);
}

.hero h1{
font-size:clamp(42px,5.4vw,66px);
line-height:1.02;
letter-spacing:0;
margin-bottom:18px;
}

.hero p{
max-width:760px;
font-size:clamp(18px,2vw,22px);
line-height:1.65;
color:#e5e7eb;
margin-bottom:30px;
}

.metrics{
display:flex;
flex-wrap:wrap;
gap:14px;
margin-bottom:30px;
}

.metrics span{
padding:12px 16px;
border-radius:999px;
background:rgba(255,255,255,.08);
border:1px solid rgba(255,255,255,.12);
font-weight:800;
font-size:14px;
}

.hero-search{
background:rgba(255,255,255,.96);
padding:28px;
border-radius:16px;
box-shadow:0 22px 55px rgba(0,0,0,.22);
border:1px solid rgba(255,255,255,.35);
}

.hero-search h3{
font-size:26px;
margin-bottom:20px;
color:#111;
}

.search-main{
width:100%;
padding:16px 20px;
border-radius:10px;
border:1px solid #d7dae2;
font-size:16px;
margin-bottom:18px;
}

.filter-chips{
display:flex;
flex-wrap:wrap;
gap:12px;
}

.chip{
padding:11px 16px;
border:1px solid #ffe0c5;
border-radius:999px;
background:#fff7f0;
font-weight:800;
cursor:pointer;
}

.chip.active,
.chip:hover{
background:var(--primary);
color:#fff;
}

/* SECTION */
.section{
padding:72px 0;
}

.section-head{
text-align:center;
margin-bottom:45px;
}

.section-head h2{
font-size:clamp(32px,4vw,48px);
letter-spacing:0;
margin-bottom:12px;
}

.section-head p{
font-size:18px;
color:var(--muted);
}

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

.card{
background:var(--surface);
border:1px solid var(--line);
border-radius:16px;
overflow:hidden;
box-shadow:0 14px 34px rgba(18,24,35,.07);
transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.card:hover{
transform:translateY(-5px);
box-shadow:0 18px 42px rgba(18,24,35,.11);
border-color:#ffd1aa;
}

.card-cover{
position:relative;
height:260px;
overflow:hidden;
background:#eceff5;
}

.card-cover img{
width:100%;
height:100%;
object-fit:cover;
object-position:var(--photo-position,center center);
}

.card-cover:after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(transparent,rgba(0,0,0,.55));
}

.verify{
position:absolute;
top:18px;
left:18px;
background:rgba(255,255,255,.94);
padding:8px 12px;
border-radius:999px;
font-size:13px;
font-weight:800;
z-index:2;
}

.mode-pill{
position:absolute;
bottom:18px;
right:18px;
background:#000;
color:#fff;
padding:8px 12px;
border-radius:999px;
z-index:2;
font-weight:700;
font-size:13px;
}

.card-body{
padding:22px;
}

.category{
color:var(--primary);
font-weight:800;
margin-bottom:10px;
font-size:13px;
text-transform:uppercase;
letter-spacing:.4px;
}

.card h3{
font-size:25px;
margin-bottom:10px;
}

.spec{
color:var(--muted);
line-height:1.6;
margin-bottom:18px;
min-height:76px;
}

.tags{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-bottom:20px;
}

.tags span{
background:#f4f6f9;
padding:8px 12px;
border-radius:999px;
font-size:13px;
font-weight:700;
color:#333b48;
}

.actions{
display:flex;
gap:12px;
}

.btn{
flex:1;
border:none;
padding:13px 18px;
border-radius:10px;
font-weight:800;
cursor:pointer;
text-align:center;
font-size:14px;
}

.btn-primary{
background:var(--primary);
color:#fff;
}

.btn-dark{
background:#111;
color:#fff;
}

/* MODAL */
.modal{
display:none;
position:fixed;
inset:0;
background:rgba(0,0,0,.75);
align-items:center;
justify-content:center;
padding:20px;
z-index:9999;
}

.modal.show{display:flex}

.modal-box{
max-width:700px;
width:100%;
background:#fff;
padding:40px;
border-radius:16px;
text-align:center;
}

.modal-box img{
width:156px;
height:156px;
object-fit:cover;
object-position:var(--photo-position,center center);
border-radius:50%;
margin:0 auto 20px;
border:4px solid var(--primary);
}

.modal-box h3{
font-size:36px;
margin-bottom:12px;
}

.modal-box p{
font-size:18px;
line-height:1.7;
margin-bottom:18px;
}

.modal-actions{
display:flex;
gap:14px;
justify-content:center;
flex-wrap:wrap;
}

.close-modal{
margin-top:25px;
background:#eee;
padding:12px 18px;
border:none;
border-radius:10px;
font-weight:800;
}

footer{
background:#fff;
padding:40px;
text-align:center;
font-weight:700;
margin-top:50px;
}

#topBtn{
position:fixed;
right:28px;
bottom:28px;
width:55px;
height:55px;
border:none;
border-radius:50%;
background:#000;
color:var(--primary);
font-size:24px;
display:none;
cursor:pointer;
}

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

.hero h1{
font-size:48px;
}

.menu nav{
display:none;
position:absolute;
top:80px;
right:0;
width:250px;
background:#000;
padding:25px;
flex-direction:column;
}

.menu nav.active{display:flex}

.menu-btn{display:flex}
.menu-actions{display:none}
}

@media(max-width:1180px) and (min-width:769px){
.grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}

@media(max-width:640px){
body{padding-top:60px}
.hero{padding:54px 0 48px}
.hero-search{padding:20px}
.metrics{gap:10px}
.metrics span{width:100%;text-align:center}
.section{padding:48px 0}
.card-cover{height:280px}
.actions{flex-direction:column}
.modal-box{padding:26px}
}

.expert-ai-panel{
background:#111;
color:#fff;
margin-top:24px;
padding:24px;
border-radius:8px;
}

.expert-ai-panel span{
color:var(--primary);
font-size:12px;
font-weight:900;
letter-spacing:.08em;
text-transform:uppercase;
}

.expert-ai-panel h2{
font-size:30px;
line-height:1.1;
margin:8px 0 10px;
}

.expert-ai-panel p{
color:#dedede;
line-height:1.55;
margin:0 0 14px;
}

.expert-ai-list{
display:grid;
gap:10px;
grid-template-columns:repeat(3,minmax(0,1fr));
}

.expert-ai-card{
background:#1c1c1c;
border:1px solid rgba(255,255,255,.12);
border-radius:8px;
padding:14px;
}

.expert-ai-card strong{
display:block;
font-size:17px;
line-height:1.25;
margin-bottom:8px;
}

.expert-ai-card small{
color:#bdbdbd;
font-weight:800;
}

@media(max-width:820px){
.expert-ai-list{grid-template-columns:1fr}
.expert-ai-panel{padding:18px}
}
