/* ═══════════════════════════════════════════════
   SARTAJ SECURITY - PREMIUM CSS
   Mobile-First, Fully Responsive
═══════════════════════════════════════════════ */
:root {
  --gold: #C9A84C;
  --gold-light: #E8C97E;
  --gold-dark: #8B6914;
  --black: #0A0A0A;
  --dark: #111111;
  --dark2: #1A1A1A;
  --dark3: #242424;
  --white: #FFFFFF;
  --offwhite: #F5F0E8;
  --gray: #9A9A9A;
  --border: rgba(201,168,76,0.25);
  --shadow: 0 8px 32px rgba(0,0,0,0.4);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body { font-family:'Jost',sans-serif; background:var(--black); color:var(--white); overflow-x:hidden; -webkit-font-smoothing:antialiased; }
img { max-width:100%; height:auto; display:block; }
a { text-decoration:none; color:inherit; }
button { cursor:pointer; font-family:'Jost',sans-serif; }
input,textarea,select { font-family:'Jost',sans-serif; }
h1,h2,h3,h4,h5 { font-family:'Cormorant Garamond',serif; }

::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--dark); }
::-webkit-scrollbar-thumb { background:var(--gold); border-radius:3px; }

/* ── NAVBAR ── */
.navbar {
  position:fixed; top:0; width:100%; z-index:1000;
  background:rgba(10,10,10,0.96);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  height:68px;
  display:flex; align-items:center;
  padding:0 4%;
  justify-content:space-between;
}
.nav-brand { display:flex; align-items:center; gap:10px; }
.nav-brand img { height:44px; width:auto; }
.nav-brand-text .name { font-family:'Cormorant Garamond',serif; font-size:1rem; font-weight:700; color:var(--gold); line-height:1.2; }
.nav-brand-text .sub { font-size:0.55rem; color:var(--gray); letter-spacing:2px; text-transform:uppercase; }
.nav-links { display:flex; align-items:center; gap:28px; list-style:none; }
.nav-links a { color:var(--gray); font-size:0.78rem; letter-spacing:2px; text-transform:uppercase; transition:color 0.3s; position:relative; padding-bottom:4px; }
.nav-links a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--gold); transition:width 0.3s; }
.nav-links a:hover, .nav-links a.active { color:var(--gold); }
.nav-links a:hover::after, .nav-links a.active::after { width:100%; }
.nav-wa { display:flex; align-items:center; gap:7px; background:#25D366; color:#fff; padding:9px 16px; font-size:0.72rem; letter-spacing:1px; font-weight:600; border:none; border-radius:3px; transition:all 0.3s; }
.nav-wa:hover { background:#1da851; transform:translateY(-1px); }
.hamburger { display:none; flex-direction:column; gap:5px; padding:5px; background:none; border:none; }
.hamburger span { display:block; width:24px; height:2px; background:var(--gold); transition:all 0.3s; border-radius:2px; }
.hamburger.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; }
.hamburger.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.mobile-nav {
  display:none; position:fixed; top:68px; left:0; width:100%;
  background:var(--dark2); border-bottom:1px solid var(--border);
  z-index:999; padding:20px;
  transform:translateY(-10px); opacity:0;
  transition:all 0.3s;
}
.mobile-nav.open { display:block; transform:translateY(0); opacity:1; }
.mobile-nav a { display:flex; align-items:center; gap:10px; color:var(--gray); font-size:0.85rem; letter-spacing:2px; text-transform:uppercase; padding:14px 0; border-bottom:1px solid var(--border); }
.mobile-nav a:last-child { border:none; }
.mobile-nav a:hover { color:var(--gold); }
.mobile-nav a .icon { font-size:1.1rem; }

/* ── UTILITIES ── */
.container { max-width:1200px; margin:0 auto; padding:0 5%; }
.section-pad { padding:70px 5%; }
.section-pad-sm { padding:50px 5%; }
.gold-line { width:50px; height:2px; background:linear-gradient(90deg, var(--gold), var(--gold-light)); margin-bottom:18px; }
.gold-line.center { margin-left:auto; margin-right:auto; }
.sec-label { font-size:0.68rem; letter-spacing:4px; text-transform:uppercase; color:var(--gold); margin-bottom:8px; }
.sec-title { font-size:clamp(2rem,5vw,3.5rem); font-weight:700; color:var(--white); line-height:1.1; margin-bottom:15px; }
.sec-sub { color:var(--gray); font-size:0.9rem; line-height:1.8; max-width:580px; }
.text-center { text-align:center; }
.text-center .sec-sub { margin:0 auto; }
.text-center .gold-line { margin-left:auto; margin-right:auto; }
.gold { color:var(--gold); }

/* ── BUTTONS ── */
.btn-gold { display:inline-flex; align-items:center; gap:8px; background:var(--gold); color:var(--black); padding:13px 30px; font-size:0.78rem; letter-spacing:2px; text-transform:uppercase; font-weight:700; border:none; transition:all 0.3s; }
.btn-gold:hover { background:var(--gold-light); transform:translateY(-2px); box-shadow:0 8px 20px rgba(201,168,76,0.3); }
.btn-outline { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--gold); color:var(--gold); padding:13px 30px; font-size:0.78rem; letter-spacing:2px; text-transform:uppercase; font-weight:600; background:transparent; transition:all 0.3s; }
.btn-outline:hover { background:var(--gold); color:var(--black); }
.btn-wa { display:inline-flex; align-items:center; gap:8px; background:#25D366; color:#fff; padding:13px 30px; font-size:0.78rem; letter-spacing:2px; text-transform:uppercase; font-weight:700; border:none; transition:all 0.3s; border-radius:3px; }
.btn-wa:hover { background:#1da851; transform:translateY(-2px); }
.btn-sm { padding:7px 16px; font-size:0.72rem; letter-spacing:1px; text-transform:uppercase; border:1px solid var(--border); background:transparent; color:var(--gray); transition:all 0.3s; }
.btn-sm.gold { border-color:var(--gold); color:var(--gold); }
.btn-sm.gold:hover { background:var(--gold); color:var(--black); }
.btn-sm.danger { border-color:#c0392b; color:#c0392b; }
.btn-sm.danger:hover { background:#c0392b; color:var(--white); }
.btn-sm.success { border-color:#27ae60; color:#27ae60; }
.btn-sm.success:hover { background:#27ae60; color:var(--white); }

/* ── HERO ── */
.hero {
  min-height:100vh; position:relative;
  display:flex; align-items:center;
  overflow:hidden; background:var(--black);
}
.hero-bg {
  position:absolute; inset:0;
  background: radial-gradient(ellipse at 75% 50%, rgba(201,168,76,0.09) 0%, transparent 60%),
              radial-gradient(ellipse at 15% 80%, rgba(201,168,76,0.05) 0%, transparent 50%);
}
.hero-grid {
  position:absolute; inset:0; opacity:0.035;
  background-image: linear-gradient(var(--gold) 1px, transparent 1px),
                    linear-gradient(90deg, var(--gold) 1px, transparent 1px);
  background-size:60px 60px;
}
.hero-deco { position:absolute; right:12%; top:0; width:1px; height:100%; background:linear-gradient(180deg,transparent,var(--gold),transparent); opacity:0.25; }
.hero-logo-bg { position:absolute; right:5%; top:50%; transform:translateY(-50%); opacity:0.07; width:min(380px,50vw); pointer-events:none; }
.hero-content { position:relative; z-index:2; padding:100px 5% 70px; }
.hero-badge { display:inline-flex; align-items:center; gap:10px; border:1px solid var(--border); padding:8px 18px; margin-bottom:28px; }
.hero-badge .dot { width:6px; height:6px; background:var(--gold); border-radius:50%; animation:pulse 2s infinite; flex-shrink:0; }
.hero-badge span { font-size:0.65rem; letter-spacing:3px; text-transform:uppercase; color:var(--gold); }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.4;transform:scale(0.8)} }
.hero-est { font-size:0.68rem; letter-spacing:5px; text-transform:uppercase; color:var(--gray); margin-bottom:12px; }
.hero-title { font-size:clamp(3.2rem,9vw,6rem); font-weight:700; line-height:0.95; color:var(--white); margin-bottom:8px; }
.hero-title .gold { color:var(--gold); display:block; }
.hero-company { font-size:clamp(0.75rem,2vw,1rem); letter-spacing:4px; text-transform:uppercase; color:var(--gray); margin-bottom:8px; }
.hero-tagline { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(1rem,3vw,1.4rem); color:var(--offwhite); margin-bottom:20px; }
.hero-desc { color:var(--gray); font-size:0.88rem; line-height:1.8; max-width:520px; margin-bottom:35px; }
.hero-btns { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:50px; }
.hero-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; padding-top:35px; border-top:1px solid var(--border); max-width:420px; }
.hero-stat .num { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:700; color:var(--gold); line-height:1; }
.hero-stat .lbl { font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; color:var(--gray); margin-top:3px; }
.est-banner { position:absolute; top:80px; right:5%; background:var(--gold); color:var(--black); padding:10px 20px; text-align:center; }
.est-banner .year { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:700; line-height:1; }
.est-banner .lbl { font-size:0.55rem; letter-spacing:3px; text-transform:uppercase; font-weight:700; }

/* ── MARQUEE ── */
.marquee-wrap { background:var(--gold); padding:13px 0; overflow:hidden; }
.marquee-inner { display:flex; animation:marquee 30s linear infinite; white-space:nowrap; }
.marquee-item { font-size:0.7rem; letter-spacing:4px; text-transform:uppercase; color:var(--black); font-weight:700; padding:0 35px; }
.marquee-sep { color:rgba(0,0,0,0.4); }
@keyframes marquee { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* ── CARDS ── */
.card { background:var(--dark2); border:1px solid var(--border); transition:all 0.35s; }
.card:hover { border-color:rgba(201,168,76,0.5); transform:translateY(-3px); box-shadow:var(--shadow); }
.service-card { padding:30px 25px; position:relative; overflow:hidden; }
.service-card::after { content:''; position:absolute; bottom:0; left:0; width:100%; height:2px; background:var(--gold); transform:scaleX(0); transition:transform 0.35s; }
.service-card:hover::after { transform:scaleX(1); }
.service-card .icon { font-size:1.8rem; margin-bottom:14px; }
.service-card h3 { font-size:1.1rem; color:var(--white); margin-bottom:8px; }
.service-card p { font-size:0.82rem; color:var(--gray); line-height:1.7; }

/* ── GRID LAYOUTS ── */
.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.grid-auto { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:20px; }
.grid-auto-sm { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:15px; }

/* ── SECTION BACKGROUNDS ── */
.bg-dark { background:var(--dark2); }
.bg-black { background:var(--black); }
.bg-dark3 { background:var(--dark3); }

/* ── INTRO / ABOUT STRIP ── */
.license-box { background:var(--dark3); border:1px solid var(--border); padding:35px 30px; }
.license-box .lbl { font-size:0.62rem; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:8px; }
.license-box .title { font-family:'Cormorant Garamond',serif; font-size:1.3rem; color:var(--white); margin-bottom:18px; }
.license-item { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid var(--border); font-size:0.82rem; color:var(--gray); }
.license-item .icon { color:var(--gold); flex-shrink:0; }
.license-item:last-child { border:none; }

/* ── WHY CHOOSE ── */
.why-feat { background:var(--dark3); border-left:3px solid var(--gold); padding:22px 20px; }
.why-feat h4 { font-size:0.95rem; color:var(--white); margin-bottom:6px; }
.why-feat p { font-size:0.8rem; color:var(--gray); line-height:1.6; }

/* ── FOUNDER / TEAM ── */
.founder-wrap { display:grid; grid-template-columns:auto 1fr; gap:35px; align-items:start; }
.founder-img { width:200px; height:260px; object-fit:cover; object-position:top; border:3px solid var(--gold); flex-shrink:0; }
.founder-name { font-family:'Cormorant Garamond',serif; font-size:2rem; color:var(--white); margin-bottom:4px; }
.founder-title { font-size:0.7rem; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:15px; }
.founder-quote { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.1rem; color:var(--offwhite); border-left:3px solid var(--gold); padding-left:15px; margin:15px 0; line-height:1.7; }

/* ── STATS BADGES ── */
.stat-badge { background:var(--dark3); border:1px solid var(--border); padding:25px 20px; text-align:center; }
.stat-badge .num { font-family:'Cormorant Garamond',serif; font-size:2.2rem; color:var(--gold); font-weight:700; }
.stat-badge .lbl { font-size:0.68rem; letter-spacing:2px; text-transform:uppercase; color:var(--gray); margin-top:4px; }

/* ── GALLERY ── */
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:3px; }
.gallery-item { position:relative; overflow:hidden; background:var(--dark3); }
.gallery-item.landscape { aspect-ratio:16/9; }
.gallery-item.portrait { aspect-ratio:3/4; }
.gallery-item.square { aspect-ratio:1; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s; display:block; }
.gallery-item video { width:100%; height:100%; object-fit:cover; display:block; }
.gallery-item:hover img { transform:scale(1.07); }
.gallery-overlay { position:absolute; inset:0; background:linear-gradient(transparent 40%, rgba(0,0,0,0.8)); display:flex; flex-direction:column; justify-content:flex-end; padding:15px; opacity:0; transition:opacity 0.3s; }
.gallery-item:hover .gallery-overlay { opacity:1; }
.gallery-overlay .cat { font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold); }
.gallery-overlay .title { font-size:0.85rem; color:var(--white); }
.gallery-video-badge { position:absolute; top:10px; right:10px; background:rgba(0,0,0,0.7); color:var(--gold); font-size:1.2rem; width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:50%; }
.gallery-filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:30px; }
.filter-btn { padding:8px 20px; border:1px solid var(--border); background:transparent; color:var(--gray); font-size:0.72rem; letter-spacing:2px; text-transform:uppercase; cursor:pointer; transition:all 0.3s; }
.filter-btn.active, .filter-btn:hover { background:var(--gold); color:var(--black); border-color:var(--gold); }

/* ── LIGHTBOX ── */
.lightbox { display:none; position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,0.97); align-items:center; justify-content:center; flex-direction:column; }
.lightbox.open { display:flex; }
.lightbox-media { max-width:92vw; max-height:85vh; object-fit:contain; }
.lightbox video { max-width:92vw; max-height:85vh; }
.lightbox-close { position:absolute; top:18px; right:22px; font-size:2rem; color:var(--gold); cursor:pointer; background:none; border:none; line-height:1; }
.lightbox-caption { color:var(--gray); font-size:0.8rem; margin-top:12px; letter-spacing:1px; }

/* ── CONTACT ── */
.contact-info-item { display:flex; gap:16px; align-items:flex-start; margin-bottom:25px; }
.ci-icon { width:44px; height:44px; background:var(--dark2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:1.1rem; }
.ci-label { font-size:0.62rem; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
.ci-value { color:var(--white); font-size:0.88rem; line-height:1.6; }
.ci-value a { color:var(--white); transition:color 0.3s; }
.ci-value a:hover { color:var(--gold); }
.contact-form { background:var(--dark2); border:1px solid var(--border); padding:35px 30px; }
.form-group { margin-bottom:16px; }
.form-group label { display:block; font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold); margin-bottom:7px; }
.form-group input, .form-group textarea, .form-group select {
  width:100%; background:var(--dark3); border:1px solid var(--border);
  color:var(--white); padding:12px 14px; font-size:0.88rem; outline:none; transition:border-color 0.3s;
}
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color:var(--gold); }
.form-group textarea { resize:vertical; height:110px; }
.form-group select option { background:var(--dark3); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.msg-box { padding:12px 16px; font-size:0.85rem; margin-bottom:15px; display:none; }
.msg-box.success { background:rgba(39,174,96,0.15); border:1px solid rgba(39,174,96,0.3); color:#2ecc71; }
.msg-box.error { background:rgba(192,57,43,0.15); border:1px solid rgba(192,57,43,0.3); color:#e74c3c; }

/* ── MAP ── */
.map-wrap { width:100%; height:380px; border:1px solid var(--border); overflow:hidden; position:relative; }
.map-wrap iframe { width:100%; height:100%; border:none; filter:grayscale(0.2) contrast(1.1); }
.map-overlay-link { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(transparent,rgba(0,0,0,0.8)); padding:15px 20px; display:flex; align-items:center; justify-content:space-between; }
.map-overlay-link span { color:var(--white); font-size:0.82rem; }
.map-overlay-link a { color:var(--gold); font-size:0.75rem; letter-spacing:2px; text-transform:uppercase; }

/* ── FOOTER ── */
.footer { background:var(--dark2); border-top:1px solid var(--border); padding:55px 5% 25px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:40px; }
.footer-brand img { height:50px; margin-bottom:12px; }
.footer-brand .name { font-family:'Cormorant Garamond',serif; font-size:1rem; color:var(--gold); font-weight:700; }
.footer-brand .sub { font-size:0.6rem; color:var(--gray); letter-spacing:2px; }
.footer-desc { font-size:0.8rem; color:var(--gray); line-height:1.8; margin:12px 0 18px; }
.footer-social { display:flex; gap:8px; }
.social-btn { width:34px; height:34px; background:var(--dark3); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:0.9rem; transition:all 0.3s; }
.social-btn:hover { background:var(--gold); border-color:var(--gold); }
.footer-col h4 { font-family:'Cormorant Garamond',serif; font-size:1.05rem; color:var(--white); margin-bottom:18px; padding-bottom:10px; border-bottom:1px solid var(--border); }
.footer-links { list-style:none; }
.footer-links li { margin-bottom:10px; }
.footer-links a { color:var(--gray); font-size:0.8rem; transition:color 0.3s; display:flex; align-items:center; gap:7px; }
.footer-links a::before { content:'›'; color:var(--gold); }
.footer-links a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid var(--border); padding-top:22px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.footer-bottom p { font-size:0.75rem; color:var(--gray); }
.footer-bottom a { color:var(--gray); font-size:0.75rem; transition:color 0.3s; }
.footer-bottom a:hover { color:var(--gold); }

/* ── FLOATING WA BTN ── */
.wa-float { position:fixed; bottom:22px; right:22px; z-index:500; width:54px; height:54px; background:#25D366; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(37,211,102,0.4); transition:all 0.3s; animation:waFloat 3s ease-in-out infinite; font-size:1.5rem; }
.wa-float:hover { background:#1da851; transform:scale(1.1); }
@keyframes waFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} }
.wa-float:hover { animation:none; }

/* ── PAGE HERO ── */
.page-hero { padding:130px 5% 70px; background:var(--dark2); position:relative; overflow:hidden; }
.page-hero-bg { position:absolute; inset:0; background:radial-gradient(ellipse at 80% 50%,rgba(201,168,76,0.07) 0%,transparent 60%); pointer-events:none; }
.page-hero-content { position:relative; z-index:2; }
.breadcrumb { display:flex; align-items:center; gap:8px; font-size:0.72rem; color:var(--gray); letter-spacing:2px; text-transform:uppercase; margin-bottom:18px; }
.breadcrumb a { color:var(--gray); transition:color 0.3s; }
.breadcrumb a:hover { color:var(--gold); }
.breadcrumb .sep { color:var(--border); }
.breadcrumb .cur { color:var(--gold); }

/* ── PSARA CARD ── */
.psara-card { background:var(--black); border:1px solid var(--gold); padding:40px 35px; }
.psara-item { display:flex; gap:14px; padding:13px 0; border-bottom:1px solid var(--border); }
.psara-item .icon { color:var(--gold); font-size:1rem; flex-shrink:0; margin-top:2px; }
.psara-item .t { color:var(--white); font-size:0.88rem; font-weight:500; }
.psara-item .s { color:var(--gray); font-size:0.78rem; margin-top:2px; }
.psara-item:last-child { border:none; }

/* ── MISSION VISION ── */
.mv-card { padding:40px 35px; border:1px solid var(--border); position:relative; overflow:hidden; }
.mv-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:3px; background:linear-gradient(90deg,var(--gold),var(--gold-light)); }
.mv-card .mv-icon { font-size:2.2rem; margin-bottom:18px; }
.mv-card h3 { font-size:1.7rem; color:var(--gold); margin-bottom:12px; }
.mv-card p { color:var(--gray); line-height:1.8; font-size:0.87rem; }

/* ── AREA TAGS ── */
.areas-wrap { display:flex; flex-wrap:wrap; gap:10px; }
.area-tag { padding:9px 20px; border:1px solid var(--border); font-size:0.8rem; color:var(--gray); letter-spacing:1px; transition:all 0.3s; }
.area-tag:hover { border-color:var(--gold); color:var(--gold); }

/* ── SERVICES FULL ── */
.srv-cat-title { font-size:1.7rem; color:var(--gold); margin-bottom:25px; padding-bottom:12px; border-bottom:1px solid var(--border); display:flex; align-items:center; gap:10px; }
.srv-card { background:var(--dark2); border:1px solid var(--border); padding:28px 22px; transition:all 0.3s; }
.srv-card:hover { background:var(--dark3); border-color:var(--gold); transform:translateY(-3px); }
.srv-card .s-icon { font-size:1.7rem; margin-bottom:13px; }
.srv-card h4 { font-size:1.05rem; color:var(--white); margin-bottom:7px; }
.srv-card p { font-size:0.8rem; color:var(--gray); line-height:1.7; }
.srv-tag { display:inline-block; margin-top:10px; font-size:0.62rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold); border:1px solid var(--border); padding:3px 10px; }

/* ── ADMIN ── */
.admin-wrap { display:flex; min-height:100vh; background:var(--black); }
.admin-sidebar { width:240px; background:var(--dark2); border-right:1px solid var(--border); flex-shrink:0; position:fixed; top:0; left:0; height:100vh; overflow-y:auto; z-index:200; transition:transform 0.3s; }
.admin-logo { padding:20px 18px; border-bottom:1px solid var(--border); }
.admin-logo .brand { font-family:'Cormorant Garamond',serif; font-size:1rem; color:var(--gold); }
.admin-logo .sub { font-size:0.6rem; color:var(--gray); letter-spacing:2px; text-transform:uppercase; margin-top:2px; }
.admin-nav { padding:15px 0; }
.admin-nav-item { display:flex; align-items:center; gap:10px; padding:13px 18px; color:var(--gray); font-size:0.82rem; cursor:pointer; border-left:3px solid transparent; transition:all 0.25s; text-decoration:none; }
.admin-nav-item:hover, .admin-nav-item.active { color:var(--gold); background:rgba(201,168,76,0.05); border-left-color:var(--gold); }
.admin-nav-item .ni { font-size:1rem; }
.admin-main { margin-left:240px; flex:1; padding:30px; min-height:100vh; }
.admin-topbar { display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; flex-wrap:wrap; gap:15px; }
.admin-topbar h1 { font-size:1.8rem; color:var(--white); }
.admin-card { background:var(--dark2); border:1px solid var(--border); padding:25px; margin-bottom:22px; }
.admin-card h3 { font-size:1.2rem; color:var(--gold); margin-bottom:18px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:25px; }
.stat-card { background:var(--dark2); border:1px solid var(--border); border-left:3px solid var(--gold); padding:22px; }
.stat-card .num { font-family:'Cormorant Garamond',serif; font-size:2.2rem; color:var(--gold); line-height:1; }
.stat-card .lbl { font-size:0.68rem; color:var(--gray); letter-spacing:1px; text-transform:uppercase; margin-top:4px; }
.admin-table { width:100%; border-collapse:collapse; font-size:0.83rem; }
.admin-table th { text-align:left; padding:10px 14px; font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold); border-bottom:1px solid var(--border); }
.admin-table td { padding:12px 14px; color:var(--gray); border-bottom:1px solid rgba(201,168,76,0.07); }
.admin-table tr:hover td { color:var(--white); }
.upload-zone { border:2px dashed var(--border); padding:40px 20px; text-align:center; cursor:pointer; transition:border-color 0.3s; background:var(--dark3); }
.upload-zone:hover { border-color:var(--gold); }
.upload-zone .icon { font-size:2.2rem; color:var(--gold); margin-bottom:10px; }
.upload-zone p { color:var(--gray); font-size:0.85rem; }
.upload-zone input[type=file] { display:none; }
.progress-bar-wrap { background:var(--dark3); height:6px; border-radius:3px; overflow:hidden; margin-top:10px; display:none; }
.progress-bar { height:100%; background:var(--gold); width:0%; transition:width 0.3s; }
.gallery-admin-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:12px; }
.gai { background:var(--dark3); border:1px solid var(--border); overflow:hidden; position:relative; }
.gai img, .gai video { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.gai .cat-badge { position:absolute; top:8px; left:8px; background:var(--gold); color:var(--black); font-size:0.58rem; letter-spacing:1px; padding:3px 8px; text-transform:uppercase; }
.gai .video-badge { position:absolute; top:8px; right:8px; background:rgba(0,0,0,0.8); color:var(--gold); font-size:1rem; width:30px; height:30px; display:flex; align-items:center; justify-content:center; border-radius:50%; }
.gai-meta { padding:10px; }
.gai-meta .g-title { font-size:0.75rem; color:var(--white); margin-bottom:4px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gai-meta .g-cat { font-size:0.62rem; color:var(--gold); letter-spacing:1px; text-transform:uppercase; margin-bottom:6px; }
.gai-meta .g-home { display:flex; align-items:center; gap:6px; font-size:0.72rem; color:var(--gray); }
.gai-meta .g-home input { accent-color:var(--gold); }
.gai-actions { display:flex; gap:6px; padding:0 10px 10px; }
.mobile-admin-toggle { display:none; position:fixed; top:15px; left:15px; z-index:300; background:var(--gold); color:var(--black); border:none; width:38px; height:38px; font-size:1.3rem; border-radius:3px; }

/* ── EVENTS CARDS ── */
.event-card { background:var(--dark2); border:1px solid var(--border); padding:25px; margin-bottom:16px; display:flex; gap:20px; align-items:flex-start; }
.event-card img { width:90px; height:70px; object-fit:cover; border:1px solid var(--border); flex-shrink:0; }
.event-card .ev-date { font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; color:var(--gold); margin-bottom:5px; }
.event-card h4 { color:var(--white); margin-bottom:5px; font-size:1rem; }
.event-card p { color:var(--gray); font-size:0.8rem; line-height:1.6; }
.event-card .ev-actions { display:flex; gap:8px; margin-top:10px; }

/* ── CUSTOM SECTION CARDS ── */
.cs-card { background:var(--dark2); border:1px solid var(--border); padding:22px; margin-bottom:14px; display:flex; justify-content:space-between; align-items:flex-start; gap:20px; }
.cs-badge { display:inline-block; padding:3px 10px; font-size:0.62rem; letter-spacing:2px; text-transform:uppercase; background:rgba(201,168,76,0.12); border:1px solid var(--gold); color:var(--gold); margin-bottom:8px; }
.cs-card h4 { color:var(--white); margin-bottom:5px; font-size:0.95rem; }
.cs-card p { color:var(--gray); font-size:0.8rem; line-height:1.6; }

/* ── FORM CHECK ── */
.form-check { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.form-check input[type=checkbox] { accent-color:var(--gold); width:16px; height:16px; }
.form-check label { font-size:0.85rem; color:var(--gray); cursor:pointer; }
.alert { padding:12px 16px; font-size:0.85rem; margin-bottom:15px; }
.alert-success { background:rgba(39,174,96,0.15); border:1px solid rgba(39,174,96,0.3); color:#2ecc71; }
.alert-danger { background:rgba(192,57,43,0.15); border:1px solid rgba(192,57,43,0.3); color:#e74c3c; }

/* ══════════════════════════════════════════════
   MOBILE RESPONSIVE — FULL OPTIMIZATION
══════════════════════════════════════════════ */
@media (max-width: 1100px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:30px; }
  .grid-4 { grid-template-columns:1fr 1fr; }
  .stats-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 900px) {
  .grid-2 { grid-template-columns:1fr; gap:30px; }
  .grid-3 { grid-template-columns:1fr 1fr; }
  .founder-wrap { grid-template-columns:1fr; }
  .founder-img { width:160px; height:210px; }
  .admin-sidebar { transform:translateX(-100%); }
  .admin-sidebar.open { transform:translateX(0); }
  .admin-main { margin-left:0; padding:20px 15px; }
  .mobile-admin-toggle { display:flex; align-items:center; justify-content:center; }
  .admin-topbar { padding-top:50px; }
  .stats-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 768px) {
  html { font-size:15px; }
  .navbar { height:60px; padding:0 4%; }
  .nav-links, .nav-wa { display:none; }
  .hamburger { display:flex; }
  .mobile-nav { top:60px; }
  .section-pad { padding:50px 4%; }
  .section-pad-sm { padding:35px 4%; }
  .hero-content { padding:85px 4% 55px; }
  .hero-logo-bg { display:none; }
  .hero-deco { display:none; }
  .est-banner { top:70px; right:4%; }
  .hero-stats { grid-template-columns:1fr 1fr; max-width:100%; }
  .hero-btns { flex-direction:column; }
  .hero-btns .btn-gold, .hero-btns .btn-wa { justify-content:center; }
  .grid-3 { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .contact-form { padding:25px 20px; }
  .footer-grid { grid-template-columns:1fr; gap:25px; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .gallery-grid { grid-template-columns:repeat(2,1fr); }
  .psara-card { padding:25px 20px; }
  .mv-card { padding:28px 22px; }
  .license-box { padding:25px 20px; }
  .page-hero { padding:100px 4% 50px; }
  .wa-float { bottom:16px; right:16px; width:48px; height:48px; font-size:1.3rem; }
}

@media (max-width: 480px) {
  html { font-size:14px; }
  .hero-title { font-size:clamp(2.8rem,12vw,4rem); }
  .sec-title { font-size:clamp(1.7rem,8vw,2.5rem); }
  .gallery-grid { grid-template-columns:1fr; }
  .gallery-admin-grid { grid-template-columns:1fr 1fr; }
  .stats-grid { grid-template-columns:1fr 1fr; }
  .stat-card .num { font-size:1.8rem; }
  .gai { }
  .btn-gold, .btn-outline, .btn-wa { padding:12px 22px; font-size:0.75rem; }
  .founder-img { width:130px; height:170px; }
  .admin-card { padding:18px; }
  .map-wrap { height:280px; }
  .footer-grid { grid-template-columns:1fr; }
  .grid-auto, .grid-auto-sm { grid-template-columns:1fr; }
  .grid-4 { grid-template-columns:1fr 1fr; }
  .hero-badge span { font-size:0.58rem; }
  .marquee-item { font-size:0.62rem; letter-spacing:2px; }
}

@media (max-width: 360px) {
  .hero-title { font-size:2.6rem; }
  .gallery-admin-grid { grid-template-columns:1fr; }
  .navbar { padding:0 3%; }
  .nav-brand-text .name { font-size:0.88rem; }
}

/* ── LOCATION CARD (replaces map iframe) ── */
.location-card {
  display: flex;
  align-items: center;
  gap: 24px;
  background: var(--dark2);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 32px 36px;
  max-width: 860px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.location-icon { font-size: 2.8rem; flex-shrink: 0; }
.location-details { flex: 1; min-width: 200px; }
.location-title { color: var(--gold); font-family: 'Cormorant Garamond', serif; font-size: 1.15rem; font-weight: 700; margin-bottom: 6px; letter-spacing: 0.5px; }
.location-addr { color: var(--gray); font-size: 0.85rem; line-height: 1.7; margin-bottom: 12px; }
.location-badges { display: flex; gap: 8px; flex-wrap: wrap; }
.loc-badge { font-size: 0.7rem; letter-spacing: 1px; color: var(--white); background: rgba(196,160,80,0.12); border: 1px solid rgba(196,160,80,0.3); padding: 4px 10px; text-transform: uppercase; }
.btn-maps {
  display: flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, #1a73e8, #1557b0);
  color: #fff;
  padding: 14px 24px;
  border-radius: 4px;
  font-family: 'Jost', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-decoration: none;
  white-space: nowrap;
  transition: transform 0.2s, box-shadow 0.2s;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
}
.btn-maps:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(26,115,232,0.4); color: #fff; }
.btn-maps .maps-icon { font-size: 1.1rem; }
.btn-maps .maps-arrow { font-size: 1rem; opacity: 0.8; }

/* ── FOOTER ADMIN HIDDEN LINK ── */
.footer-admin-link {
  text-align: center;
  padding: 6px 0 4px;
  border-top: 1px solid rgba(255,255,255,0.04);
}
.footer-admin-link a {
  color: rgba(255,255,255,0.08);
  font-size: 0.5rem;
  letter-spacing: 0;
  text-decoration: none;
  transition: color 0.3s;
  padding: 4px 10px;
}
.footer-admin-link a:hover { color: var(--gold); }

@media (max-width: 640px) {
  .location-card { flex-direction: column; padding: 24px 20px; text-align: center; align-items: center; }
  .location-badges { justify-content: center; }
  .btn-maps { width: 100%; justify-content: center; }
}
