
:root{
 --primary:#0f172a;
 --accent:#0ea5e9;
 --success:#16a34a;
 --bg:#f5f7fa;
 --card:#ffffff;
 --text:#1f2937;
 --muted:#6b7280;
 --radius:18px;
}
*{box-sizing:border-box}
body{
 margin:0;
 font-family:Inter,system-ui,Arial,sans-serif;
 background:var(--bg);
 color:var(--text);
}
.navbar{
 position:sticky;
 top:0;
 z-index:1000;
 background:#fff!important;
 box-shadow:0 2px 12px rgba(0,0,0,.06);
}
.container{max-width:1320px}
h2,h3,h4,h5{font-weight:700}
#fotoPrincipal{
 width:100%;
 aspect-ratio:16/10;
 object-fit:cover;
 border-radius:var(--radius);
 box-shadow:0 12px 30px rgba(0,0,0,.12);
 background:#ddd;
}
.thumb{
 cursor:pointer;
 aspect-ratio:1;
 object-fit:cover;
 border-radius:12px;
 border:2px solid transparent;
 transition:.2s;
}
.thumb:hover{
 transform:translateY(-2px);
 border-color:var(--accent);
}
.col-lg-5>.alert{
 border:none;
 border-radius:16px;
 background:#eefaf3;
}
.btn-success{
 border-radius:14px;
 padding:.9rem;
 font-weight:700;
}
section{
 background:#fff;
 padding:32px;
 margin-top:40px;
 border-radius:20px;
 box-shadow:0 6px 20px rgba(0,0,0,.05);
}
.card{
 border:none;
 border-radius:18px;
 overflow:hidden;
 box-shadow:0 8px 20px rgba(0,0,0,.08);
 transition:.25s;
 height:100%;
}
.card:hover{
 transform:translateY(-4px);
}
.card img{
 width:100%;
 aspect-ratio:16/10;
 object-fit:cover;
}
.table th{
 width:220px;
 color:var(--muted);
}
.price-box{
 position:sticky;
 top:90px;
}
.market-badge{
 display:inline-block;
 background:#dcfce7;
 color:#166534;
 padding:8px 14px;
 border-radius:999px;
 font-weight:700;
}
.hero-price{
 font-size:2.2rem;
 font-weight:800;
 color:#15803d;
}
.old-price{
 color:#9ca3af;
 text-decoration:line-through;
}
footer{
 padding:60px 0;
 text-align:center;
 color:#6b7280;
}
@media(max-width:991px){
 .price-box{position:static}
 section{padding:22px}
}