/* PALETA PÚBLICA - IDENTIDAD SOBRIA
   Verde grafito: #29443B
   Naranja institucional sobrio: #C9782B
   Naranja hover: #A96022
   Fondo cálido: #F7F5F1
*/
:root{
  --brand-green:#29443B;
  --brand-green-dark:#20372F;
  --brand-orange:#C9782B;
  --brand-orange-dark:#A96022;
  --brand-cream:#F7F5F1;
  --brand-line:#E3E7E3;
  --brand-text:#1D2925;
  --brand-muted:#66736D;
  --bs-success:#29443B;
  --bs-success-rgb:41,68,59;
}

body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--brand-text);background:#fff}
.site-nav{border-bottom:1px solid var(--brand-line)}
.site-nav .navbar-brand{color:var(--brand-green)!important;letter-spacing:-.03em}
.site-nav .nav-link{color:#40504A;font-weight:500;transition:color .2s ease}
.site-nav .nav-link:hover,.site-nav .nav-link:focus{color:var(--brand-orange)}
.site-nav .navbar-toggler{border-color:var(--brand-line);color:var(--brand-green)}

.hero{background:radial-gradient(circle at 85% 20%,#d9bd7b35,transparent 30%),linear-gradient(135deg,#f7f5f1,#fff);min-height:680px;display:flex;align-items:center}
.hero h1{letter-spacing:-.05em;color:var(--brand-green)}
.hero-card{background:#fff;border:1px solid var(--brand-line);border-radius:28px;box-shadow:0 20px 50px rgba(41,68,59,.09)}
.bars{height:280px;background:#f2f0eb;border-radius:18px;padding:25px;display:flex;align-items:end;gap:14px}
.bars span{flex:1;background:linear-gradient(#d4a15e,var(--brand-orange));border-radius:8px 8px 2px 2px}
.section-head small{color:var(--brand-orange);font-weight:800;letter-spacing:.15em}
.section-head h2{font-weight:750;letter-spacing:-.04em;font-size:clamp(2rem,4vw,3rem);color:var(--brand-green)}
.icon-box{width:48px;height:48px;border-radius:14px;background:#f2e9df;color:var(--brand-orange);display:grid;place-items:center;font-weight:800;margin-bottom:18px}
.card{border-radius:20px}
.about-box{min-height:360px;border-radius:28px;background:linear-gradient(145deg,var(--brand-green) 0%,#34554A 68%,var(--brand-orange) 150%);color:white;padding:35px;display:flex;flex-direction:column;justify-content:end;font-weight:900;font-size:38px;line-height:1;box-shadow:0 18px 40px rgba(41,68,59,.12)}
.contact{background:var(--brand-green)}
.contact h2,.contact p{color:#fff}
.news-thumb{height:145px;background:linear-gradient(135deg,var(--brand-green),#52675E);color:#fff;display:grid;place-items:center;font-weight:900;letter-spacing:.08em}

/* Landing responsive and full-width slider */
.site-slider{width:100%;height:430px;overflow:hidden;background:var(--brand-green)}
.site-slider .carousel,.site-slider .carousel-inner,.site-slider .carousel-item{height:100%}
.site-slider .carousel-item>img{width:100%;height:430px;object-fit:cover;object-position:center}
.site-slider .slider-link{position:absolute;inset:0;z-index:3}
.site-slider .carousel-caption{z-index:4;pointer-events:none}
.site-slider .slider-caption{display:inline-block;padding:12px 22px;border-radius:12px;background:rgba(32,55,47,.72);backdrop-filter:blur(4px)}
.site-slider .slider-caption h2{margin:0;font-weight:800}

/* Utilidades de marca */
.text-orange{color:var(--brand-orange)!important}
.bg-orange{background-color:var(--brand-orange)!important;color:#fff!important}
.btn-orange{--bs-btn-color:#fff;--bs-btn-bg:var(--brand-orange);--bs-btn-border-color:var(--brand-orange);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--brand-orange-dark);--bs-btn-hover-border-color:var(--brand-orange-dark);--bs-btn-active-color:#fff;--bs-btn-active-bg:var(--brand-orange-dark);--bs-btn-active-border-color:var(--brand-orange-dark);background-color:var(--brand-orange)!important;border-color:var(--brand-orange)!important;color:#fff!important;box-shadow:none}
.btn-orange:hover,.btn-orange:focus,.btn-orange:active{background:var(--brand-orange-dark)!important;border-color:var(--brand-orange-dark)!important;color:#fff!important;box-shadow:0 0 0 .2rem rgba(201,120,43,.18)!important}
.btn-outline-orange{--bs-btn-color:var(--brand-orange-dark);--bs-btn-border-color:var(--brand-orange);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--brand-orange);--bs-btn-hover-border-color:var(--brand-orange);--bs-btn-active-color:#fff;--bs-btn-active-bg:var(--brand-orange-dark);--bs-btn-active-border-color:var(--brand-orange-dark);color:var(--brand-orange-dark)!important;border-color:var(--brand-orange)!important}
.btn-outline-orange:hover,.btn-outline-orange:focus,.btn-outline-orange:active{background:var(--brand-orange)!important;border-color:var(--brand-orange)!important;color:#fff!important}
.text-bg-orange{background-color:var(--brand-orange)!important;color:#fff!important}
.border-success{border-color:var(--brand-green)!important}

/* Botones de marca */
.btn.btn-orange,button.btn.btn-orange,a.btn.btn-orange,input.btn.btn-orange{background-color:var(--brand-orange)!important;background-image:none!important;border-color:var(--brand-orange)!important;color:#fff!important;opacity:1!important}
.btn.btn-orange:hover,.btn.btn-orange:focus,.btn.btn-orange:active,.btn.btn-orange:focus-visible,.btn.btn-orange.show{background-color:var(--brand-orange-dark)!important;background-image:none!important;border-color:var(--brand-orange-dark)!important;color:#fff!important}

/* Enlaces y elementos Bootstrap que usan success */
.text-success{color:var(--brand-green)!important}
.bg-success{background-color:var(--brand-green)!important}

@media(max-width:991.98px){.site-nav .navbar-nav{padding:12px 0}.site-nav .btn{margin-top:8px}.hero h1{font-size:clamp(2.4rem,8vw,4rem)}}
@media(max-width:768px){.site-slider{height:260px}.site-slider .carousel-item>img{height:260px}.hero{padding-top:25px!important}.hero-card{margin-top:0}.section-head h2{font-size:2rem}.about-box{min-height:280px}}
@media(max-width:575.98px){.site-slider{height:210px}.site-slider .carousel-item>img{height:210px}.container{width:92%}.display-3{font-size:2.45rem}.lead{font-size:1rem}.contact h2{font-size:2.15rem}.site-slider .carousel-indicators{margin-bottom:8px}}
