:root{--navy:#0F1E36;--gold:#D4AF37;--teal:#0D9488;--bg:#F8F9FA;}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:var(--bg);color:var(--navy);margin:0;}
h1,h2,h3,h4,.font-serif{font-family:'Cinzel','Playfair Display',serif;}
.bg-navy{background:var(--navy)!important;}.text-gold{color:var(--gold)!important;}.bg-gold{background:var(--gold)!important;}
.top-bar{background:#0A1424;color:#94A3B8;font-size:12px;font-weight:600;padding:8px 0;border-bottom:2px solid var(--gold);}
.btn-gold{background:linear-gradient(135deg,#D4AF37,#c49f2b);color:#0F1E36;font-weight:700;border:none;transition:all .25s;}
.btn-gold:hover{background:linear-gradient(135deg,#c49f2b,#b8912a);color:#0F1E36;transform:translateY(-2px);box-shadow:0 6px 20px rgba(212,175,55,.4);}
.section-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}
.section-line{width:60px;height:3px;background:var(--gold);border-radius:2px;margin:8px auto 0;}
.card-hover{transition:transform .25s,box-shadow .25s;}.card-hover:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(0,0,0,.1);}
.navbar .nav-link{font-size:14px;color:#334155!important;font-weight:600;transition:color .2s;}.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--gold)!important;}
.floating-ai{position:fixed;bottom:24px;right:24px;z-index:1050;background:linear-gradient(135deg,#0F1E36,#0D9488);color:#FFF;border:2px solid #D4AF37;border-radius:999px;padding:14px 24px;font-weight:700;font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.35);cursor:pointer;transition:transform .2s;}.floating-ai:hover{transform:scale(1.06);}
.whatsapp-float{position:fixed;bottom:90px;right:26px;z-index:1040;background:#25D366;color:#fff;border-radius:50%;width:52px;height:52px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(37,211,102,.4);transition:transform .2s;text-decoration:none;}.whatsapp-float:hover{transform:scale(1.1);color:#fff;}
.cert-outer{border:5px solid var(--navy);padding:10px;border-radius:20px;background:#FFFEF8;}.cert-inner{border:3px solid var(--gold);padding:40px;border-radius:14px;position:relative;background:linear-gradient(135deg,#FFFEF8,#FFF8E7);}
.cert-watermark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:.04;pointer-events:none;}
.admin-sidebar{width:270px;background:#0A1424;min-height:100vh;position:fixed;left:0;top:0;z-index:1000;border-right:2px solid var(--gold);display:flex;flex-direction:column;}
.admin-main{margin-left:270px;min-height:100vh;}
@media(max-width:991px){.admin-sidebar{position:relative;width:100%;min-height:auto;}.admin-main{margin-left:0;}}
.nav-admin-btn{color:#CBD5E1;text-align:left;border-radius:12px;padding:12px 16px;font-weight:700;font-size:13px;border:none;background:0;width:100%;transition:all .2s;}.nav-admin-btn:hover,.nav-admin-btn.active{background:#0F1E36;color:#D4AF37;border-left:4px solid #D4AF37;}
.kpi{border:none;border-radius:16px;box-shadow:0 4px 15px rgba(0,0,0,.05);background:#fff;}
@media print{.no-print{display:none!important;}body{background:#fff!important;}}

/* Galerie photos */
.imc-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:170px;grid-auto-flow:dense;gap:12px;}
@media (min-width:992px){.imc-gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;}.imc-gallery-grid.is-three{grid-template-columns:repeat(3,1fr);}}
.imc-gallery-grid.has-feature .imc-gallery-item:first-child{grid-column:span 2;grid-row:span 2;}
.imc-gallery-item{position:relative;display:block;width:100%;height:100%;padding:0;border:0;border-radius:16px;overflow:hidden;background:#0F1E36;cursor:zoom-in;}
.imc-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.imc-gallery-item:hover img,.imc-gallery-item:focus-visible img{transform:scale(1.04);}
.imc-gallery-item:focus-visible{outline:3px solid #D4AF37;outline-offset:2px;}
.imc-gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 10px;color:#fff;font-size:12px;font-weight:600;line-height:1.35;text-align:left;background:linear-gradient(transparent,rgba(15,30,54,.92));}
@media (prefers-reduced-motion:reduce){.imc-gallery-item img{transition:none;}}
