/* ── SHARED CBA STYLESHEET ── */
*{margin:0;padding:0;box-sizing:border-box}
:root{--blue:#2e6bc4;--blue-mid:#1a4fa0;--blue-dark:#0f2d60;--blue-pale:#e8f0fb;--blue-pale2:#f0f5ff;--text:#1a2540;--text-muted:#7a8aaa;--border:#dde5f0;--white:#fff;--bg:#f7f9fc}
body{font-family:'Georgia',serif;background:var(--white);color:var(--text)}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:var(--white);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:10px 40px;box-shadow:0 1px 8px rgba(46,107,196,.07)}
.nav-logo img{height:56px}
.nav-menu{list-style:none;display:flex;gap:4px;align-items:center}
.nav-menu>li{position:relative}
.nav-menu>li>a,.nav-menu>li>span{display:flex;align-items:center;gap:4px;color:var(--text-muted);text-decoration:none;font-size:.72rem;letter-spacing:1px;text-transform:uppercase;padding:8px 12px;border-radius:4px;transition:color .2s,background .2s;cursor:pointer;white-space:nowrap}
.nav-menu>li>a:hover,.nav-menu>li>span:hover,.nav-menu>li:hover>a,.nav-menu>li:hover>span{color:var(--blue);background:var(--blue-pale2)}
.nav-menu>li>a.active{color:var(--blue)}
.nav-menu>li>span::after,.nav-menu>li>a.has-dd::after{content:'▾';font-size:.6rem;opacity:.6;margin-left:2px}
.dropdown{position:absolute;top:100%;left:0;background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 28px rgba(46,107,196,.12);min-width:240px;padding:12px 0 6px;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .18s,transform .18s;z-index:200;margin-top:0}
.nav-menu>li:hover .dropdown{opacity:1;pointer-events:all;transform:translateY(0)}
.dropdown a{display:block;padding:9px 18px;font-size:.78rem;color:var(--text-muted);text-decoration:none;transition:color .15s,background .15s;white-space:nowrap}
.dropdown a:hover{color:var(--blue);background:var(--blue-pale2)}
.drop-group{padding:6px 18px 2px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;color:#b0bcd4;border-top:1px solid var(--border);margin-top:4px}
.drop-group:first-child{border-top:none;margin-top:0}
.dropdown-right{left:auto;right:0}
.nav-cta{background:var(--blue)!important;color:#fff!important;padding:9px 18px!important;border-radius:5px;letter-spacing:1px!important;margin-left:6px}
.nav-cta:hover{background:var(--blue-mid)!important;color:#fff!important}
.nav-admin{color:var(--text-muted)!important;border:1px solid var(--border)!important;padding:7px 14px!important;border-radius:4px}
.nav-admin:hover{border-color:var(--blue)!important;color:var(--blue)!important;background:transparent!important}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--text-muted);border-radius:2px}

/* MOBILE NAV */
.mobile-nav-overlay{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.5)}
.mobile-nav-panel{background:#fff;width:280px;height:100%;overflow-y:auto;padding:0 0 24px}
.mobile-nav-logo{padding:18px 22px 18px;border-bottom:1px solid var(--border)}
.mobile-nav-logo img{height:48px}
.mobile-nav-panel a{display:block;padding:12px 24px;font-size:.84rem;color:var(--text);text-decoration:none;border-bottom:1px solid var(--border)}
.mobile-nav-cta{padding:20px 22px}
.mobile-nav-cta a{display:block;background:var(--blue);color:#fff;text-align:center;padding:13px;border-radius:6px;text-decoration:none;font-size:.84rem;border:none}

/* PAGE HEADER */
.page-header{position:relative;padding:56px 48px 52px;text-align:center;overflow:hidden;background:linear-gradient(135deg,var(--blue-dark),var(--blue))}
.page-header::before{content:'';position:absolute;inset:0;background:url('images/cbafrente1.jpg') center 40%/cover no-repeat;opacity:.25;z-index:0}
.page-header>*{position:relative;z-index:1}
.page-header .tag{font-size:.65rem;letter-spacing:5px;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:12px;display:block}
.page-header h1{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:normal;color:#fff;margin-bottom:10px}
.page-header p{font-size:.9rem;color:rgba(255,255,255,.65)}

/* LAYOUT */
.page-body{max-width:1100px;margin:0 auto;padding:56px 40px 80px;display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}
.page-body-full{grid-template-columns:1fr;max-width:900px}
.main-col{}
.page-sidebar{position:sticky;top:90px}

/* SECTION LABEL */
.section-label{font-size:.62rem;letter-spacing:4px;text-transform:uppercase;color:var(--blue);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.section-label::after{content:'';flex:1;height:1px;background:var(--border)}

/* CONTENT BLOCKS */
.content-block{margin-bottom:44px}
.content-block h2{font-size:1.2rem;font-weight:normal;margin-bottom:14px}
.content-block p{font-size:.88rem;color:var(--text-muted);line-height:1.85;margin-bottom:12px}
.content-block ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.content-block ul li{font-size:.86rem;color:var(--text-muted);padding-left:18px;position:relative;line-height:1.6}
.content-block ul li::before{content:'·';position:absolute;left:0;color:var(--blue);font-weight:bold}

/* CARD GRIDS */
.card-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
.info-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:20px 22px}
.info-card .ic-icon{font-size:1.6rem;margin-bottom:10px}
.info-card h4{font-size:.88rem;font-weight:normal;color:var(--text);margin-bottom:6px}
.info-card p{font-size:.78rem;color:var(--text-muted);line-height:1.7}
.info-card .lbl{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}
.info-card .val{font-size:.9rem;color:var(--text)}
.info-card a{color:var(--blue);text-decoration:none;font-size:.86rem}
.info-card a:hover{text-decoration:underline}

/* POLICY / FEATURE ITEMS */
.feature-item{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-bottom:12px}
.feature-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px}
.feature-item p{font-size:.86rem;color:var(--text-muted);line-height:1.75}
.feature-item strong{color:var(--text);display:block;margin-bottom:2px;font-size:.9rem}

/* INFO BOX */
.info-box{display:flex;gap:14px;align-items:flex-start;background:#fff8e6;border:1px solid #f0c040;border-radius:10px;padding:18px 20px;margin-bottom:20px;font-size:.84rem;color:#5a4a00;line-height:1.7}
.info-box-icon{font-size:1.3rem;flex-shrink:0}
.info-box a{color:var(--blue)}

/* SIDEBAR CARD */
.sidebar-card{background:var(--white);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:18px;box-shadow:0 2px 12px rgba(46,107,196,.06)}
.sidebar-card-header{background:var(--blue);padding:16px 22px}
.sidebar-card-header h3{font-size:.85rem;font-weight:normal;color:#fff}
.sidebar-card-body{padding:20px 22px}
.info-row{display:flex;flex-direction:column;gap:4px;padding:11px 0;border-bottom:1px solid var(--border)}
.info-row:last-child{border-bottom:none}
.info-row .lbl{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}
.info-row .val{font-size:.88rem;color:var(--text);line-height:1.5}
.info-row a{color:var(--blue);text-decoration:none}

/* CONTACT PAGE */
.contact-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}
.contact-hero-item{display:flex;gap:14px;align-items:flex-start;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:20px}
.contact-icon{width:42px;height:42px;background:var(--blue-pale);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.lbl{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:3px}
.val{font-size:.92rem;color:var(--text);line-height:1.5}
.val a{color:var(--blue);text-decoration:none}
.staff-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:32px}
.staff-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:18px 20px}
.staff-name{font-size:.9rem;color:var(--text);margin-bottom:4px}
.staff-title{font-size:.75rem;color:var(--text-muted);margin-bottom:8px;line-height:1.5}
.staff-email{font-size:.78rem;color:var(--blue);text-decoration:none}
.staff-email:hover{text-decoration:underline}
.dept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dept-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:18px;text-align:center}
.dept-icon{font-size:1.5rem;margin-bottom:8px}
.dept-name{font-size:.78rem;color:var(--text);margin-bottom:8px;line-height:1.4}
.dept-card a{font-size:.75rem;color:var(--blue);text-decoration:none;word-break:break-all}

/* SOBRE CBA */
.arte-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.arte-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:20px}
.arte-card h4{font-size:.92rem;color:var(--text);margin-bottom:4px}
.arte-card .artist{font-size:.75rem;color:var(--blue);margin-bottom:8px;font-style:italic}
.arte-card p{font-size:.8rem;color:var(--text-muted);line-height:1.7}
.junta-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.junta-item{display:flex;align-items:center;gap:16px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:14px 18px}
.junta-role{font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:var(--blue);min-width:110px}
.junta-name{font-size:.88rem;color:var(--text)}
.planta-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.planta-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:16px 18px}
.planta-name{font-size:.88rem;font-style:italic;color:var(--text-mid,#3d5080);margin-bottom:2px}
.planta-sci{font-size:.72rem;color:var(--blue);margin-bottom:6px}
.planta-card p{font-size:.78rem;color:var(--text-muted);line-height:1.6}

/* FACILIDADES */
.sala-hero{background:linear-gradient(135deg,#0d1428,#1a2448);border-radius:12px;padding:36px;margin-bottom:20px;color:#fff;display:flex;gap:24px;align-items:center}
.sala-hero-icon{font-size:3rem;flex-shrink:0}
.sala-hero h3{font-size:1.3rem;font-weight:normal;margin-bottom:6px}
.sala-hero .cap{font-size:.7rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:10px}
.sala-hero p{font-size:.86rem;color:rgba(255,255,255,.7);line-height:1.75}
.sala-features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:32px}
.sala-feat{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:14px;text-align:center;font-size:.78rem;color:var(--text-muted)}
.sala-feat .sf-icon{font-size:1.3rem;margin-bottom:6px}

/* FOOTER */
.site-footer{background:var(--blue-dark);padding:50px 48px 28px;color:rgba(255,255,255,.55)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:40px;max-width:1100px;margin-left:auto;margin-right:auto}
.footer-brand img{height:64px;margin-bottom:14px;filter:brightness(1.2)}
.footer-brand p,.footer-brand .address{font-size:.8rem;line-height:1.8}
.footer-brand .address{margin-top:10px;font-size:.72rem}
.footer-col h4{font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:16px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.footer-col ul a{color:rgba(255,255,255,.55);text-decoration:none;font-size:.8rem;transition:color .2s}
.footer-col ul a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);font-size:.7rem;max-width:1100px;margin:0 auto}
.social-links{display:flex;gap:16px}
.social-links a{color:rgba(255,255,255,.45);text-decoration:none;font-size:.7rem;transition:color .2s}
.social-links a:hover{color:#fff}

/* BTN */
.btn-blue{display:inline-block;background:var(--blue);color:#fff;border:none;padding:12px 26px;font-family:'Georgia',serif;font-size:.8rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:8px;cursor:pointer;text-decoration:none;transition:background .2s;margin-top:12px}
.btn-blue:hover{background:var(--blue-mid)}
.btn-outline-blue{display:inline-block;background:transparent;color:var(--blue);border:1px solid var(--border);padding:11px 22px;font-family:'Georgia',serif;font-size:.78rem;letter-spacing:1px;text-transform:uppercase;border-radius:8px;cursor:pointer;text-decoration:none;transition:all .2s;margin-top:8px}
.btn-outline-blue:hover{border-color:var(--blue);background:var(--blue-pale)}

/* RESPONSIVE */
@media(max-width:1024px){nav{padding:10px 20px}.nav-menu{display:none}.nav-hamburger{display:flex}}
@media(max-width:900px){.page-header{padding:40px 24px}.page-body{grid-template-columns:1fr;padding:36px 22px 60px;gap:32px}.page-sidebar{position:static}.card-grid-2,.card-grid-3,.staff-grid,.dept-grid,.contact-hero,.arte-grid,.planta-grid,.sala-features{grid-template-columns:1fr}.site-footer{padding:40px 22px 22px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}}
