:root{
  --cacao:#7a4b2a;
  --cacao-deep:#4c311f;
  --cafe:#b07b4a;
  --beige:#f7efe8;
  --beige-2:#efe3d8;
  --text:#3a2f27;
}

body{font-family:Segoe UI, Arial, sans-serif; background:linear-gradient(180deg,#fffaf7 0%, var(--beige) 100%); color:var(--text);}
img{max-width:100%;}
main.container{padding-bottom:3rem;}
.card{border-radius:18px; border:1px solid rgba(122,75,42,.12); box-shadow:0 12px 30px rgba(76,49,31,.10); transition:transform .2s ease, box-shadow .2s ease;}
.card:hover{transform:translateY(-2px); box-shadow:0 16px 36px rgba(76,49,31,.14);}
.navbar{background:linear-gradient(135deg, var(--cacao-deep) 0%, var(--cacao) 100%) !important;}
.navbar-brand img.site-logo{height:48px; width:auto; max-width:180px; object-fit:contain; display:block; flex-shrink:0;}
.navbar-brand span{white-space:nowrap;}
.logo-preview{max-height:64px; width:auto; max-width:180px; object-fit:contain; display:block;}
.hero{background:linear-gradient(135deg,#5a3a24 0%, #9c6a40 45%, #d5af7a 100%); color:#fff; border-radius:28px; overflow:hidden; position:relative;}
.hero::after{content:""; position:absolute; inset:0; background:linear-gradient(120deg, rgba(255,255,255,0.08), transparent 35%, rgba(255,255,255,0.08)); pointer-events:none;}
.hero-visual{min-height:260px; background:linear-gradient(135deg, rgba(255,255,255,0.18), rgba(255,255,255,0.04)); border:1px solid rgba(255,255,255,0.18);}
.hero-logo{max-height:180px; width:auto; max-width:100%; object-fit:contain; filter:drop-shadow(0 12px 18px rgba(0,0,0,.18));}
.hero .btn{border-radius:999px; background:#fff; color:var(--cacao-deep); border-color:#fff; box-shadow:0 10px 20px rgba(0,0,0,.12);}
.hero .btn:hover{background:var(--beige-2); color:var(--cacao-deep);}
.badge.bg-primary-subtle{background-color:rgba(122,75,42,.14) !important; color:var(--cacao-deep) !important; border-color:rgba(122,75,42,.18) !important;}
.btn-primary{background:linear-gradient(135deg,var(--cacao) 0%, var(--cafe) 100%); border-color:var(--cacao); box-shadow:0 10px 18px rgba(122,75,42,.22);}
.btn-primary:hover{background:linear-gradient(135deg,var(--cacao-deep) 0%, var(--cacao) 100%); border-color:var(--cacao-deep);}
.btn-outline-primary{color:var(--cacao-deep); border-color:var(--cacao);}
.btn-outline-primary:hover{background:var(--cacao); color:#fff;}
.presentation-panel{background:linear-gradient(135deg,#fffaf7 0%, #efe3d8 100%); border:1px solid rgba(122,75,42,.10);}
.hero-visual{min-height:260px; background:linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02)); border:1px solid rgba(255,255,255,0.16); border-radius:24px; padding:1rem;}
.hero-logo{max-height:180px; width:auto; max-width:100%; object-fit:contain; display:block; filter:drop-shadow(0 10px 18px rgba(0,0,0,.20)); background:transparent;}
.presentation-carousel .carousel-inner{background:linear-gradient(135deg,#7a4b2a 0%, #b07b4a 100%);}
.presentation-carousel .slide-card{background:linear-gradient(135deg, rgba(255,255,255,0.92) 0%, rgba(255,248,242,0.96) 100%); color:var(--text); min-height:260px; border:1px solid rgba(122,75,42,.12);}
.presentation-carousel .carousel-indicators [data-bs-target]{background-color:var(--cacao-deep); width:12px; height:12px; border-radius:50%; opacity:.45;}
.presentation-carousel .carousel-indicators .active{opacity:1; background-color:#fff;}
.presentation-carousel .carousel-control-prev-icon,
.presentation-carousel .carousel-control-next-icon{filter:invert(1) grayscale(1);}
