@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
:root {
  --primary: #0a5c36;
  --primary-dark: #074026;
  --accent: #d90429;
  --accent-hover: #ef233c;
  --text-dark: #2b2d42;
  --text-light: #6c757d;
  --bg-light: #f8f9fa;
  --white: #ffffff;
  --border: #e9ecef;
  --shadow-sm: 0 4px 6px rgba(0,0,0,0.05);
  --shadow-md: 0 8px 15px rgba(0,0,0,0.1);
  --shadow-lg: 0 15px 30px rgba(0,0,0,0.15);
  --transition: all 0.3s ease;
  --radius: 12px;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Poppins',sans-serif; color:var(--text-dark); background:var(--white); line-height:1.6; overflow-x:hidden; }
a { text-decoration:none; color:inherit; transition:var(--transition); }
ul { list-style:none; }
img { max-width:100%; height:auto; }
.container { width:90%; max-width:1200px; margin:0 auto; padding:0 20px; }
.section { padding:90px 0; }
.section-title { text-align:center; font-size:2.5rem; font-weight:700; color:var(--primary-dark); margin-bottom:15px; }
.section-title::after { content:''; display:block; width:80px; height:4px; background:var(--accent); margin:20px auto 0; border-radius:2px; }
.section-subtitle { text-align:center; color:var(--text-light); margin-bottom:60px; max-width:700px; font-size:1.1rem; margin-left:auto; margin-right:auto; }
.bg-light { background:var(--bg-light); }
.btn { display:inline-block; padding:14px 30px; border-radius:50px; font-weight:600; cursor:pointer; transition:var(--transition); border:none; font-size:1rem; text-align:center; font-family:inherit; }
.btn-primary { background:var(--primary); color:var(--white); box-shadow:var(--shadow-md); }
.btn-primary:hover { background:var(--primary-dark); transform:translateY(-3px); box-shadow:var(--shadow-lg); }
.btn-accent { background:var(--accent); color:var(--white); box-shadow:var(--shadow-md); }
.btn-accent:hover { background:var(--accent-hover); transform:translateY(-3px); box-shadow:var(--shadow-lg); }
.btn-outline { background:transparent; color:var(--white); border:2px solid var(--white); }
.btn-outline:hover { background:var(--white); color:var(--primary-dark); }
/* HEADER & NAV */
header { background:var(--white); box-shadow:var(--shadow-sm); position:fixed; top:0; width:100%; z-index:1000; transition:var(--transition); }
header.scrolled { box-shadow:var(--shadow-lg); }
.navbar { display:flex; justify-content:space-between; align-items:center; padding:12px 0; }
.logo img { height:50px; object-fit:contain; }
.nav-links { display:flex; align-items:center; gap:5px; }
.nav-item { position:relative; }
.nav-link { font-weight:500; color:var(--text-dark); font-size:0.95rem; padding:10px 14px; display:block; border-radius:6px; }
.nav-link:hover, .nav-item.active .nav-link { color:var(--primary); background:rgba(10,92,54,0.05); }
.dropdown { position:absolute; top:100%; left:0; background:var(--white); min-width:220px; box-shadow:var(--shadow-md); border-radius:8px; opacity:0; visibility:hidden; transform:translateY(10px); transition:var(--transition); z-index:100; overflow:hidden; }
.nav-item:hover .dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.dropdown li { border-bottom:1px solid var(--border); }
.dropdown li:last-child { border-bottom:none; }
.dropdown a { display:block; padding:12px 20px; font-size:0.9rem; font-weight:500; }
.dropdown a:hover { background:rgba(10,92,54,0.05); color:var(--primary); padding-left:25px; }
.nav-cta { margin-left:10px; }
.menu-toggle { display:none; font-size:1.5rem; color:var(--primary); cursor:pointer; }

/* HERO */
.hero { position:relative; height:100vh; min-height:600px; display:flex; align-items:center; overflow:hidden; }
.hero-slider { position:absolute; top:0; left:0; width:100%; height:100%; z-index:0; }
.slide { position:absolute; top:0; left:0; width:100%; height:100%; opacity:0; transition:opacity 1.2s ease-in-out; background-size:cover; background-position:center; }
.slide.active { opacity:1; }
.slide::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(7,64,38,0.88) 0%, rgba(10,92,54,0.5) 50%, rgba(7,64,38,0.75) 100%); }
.hero-content { position:relative; z-index:1; color:var(--white); max-width:700px; padding-top:80px; }
.hero-title { font-size:3.5rem; font-weight:700; margin-bottom:20px; line-height:1.15; }
.hero-subtitle { font-size:1.2rem; margin-bottom:35px; font-weight:300; opacity:0.95; line-height:1.7; }
.hero-btns { display:flex; gap:15px; flex-wrap:wrap; }
.hero-dots { position:absolute; bottom:30px; left:50%; transform:translateX(-50%); z-index:2; display:flex; gap:10px; }
.hero-dot { width:12px; height:12px; border-radius:50%; background:rgba(255,255,255,0.4); cursor:pointer; transition:var(--transition); border:none; }
.hero-dot.active { background:var(--accent); transform:scale(1.2); }

/* COMPLIANCE CALENDAR */
.calendar-section { background:linear-gradient(135deg, var(--primary-dark), var(--primary)); color:var(--white); padding:60px 0; }
.calendar-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px,1fr)); gap:20px; margin-top:30px; }
.calendar-item { background:rgba(255,255,255,0.1); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.15); border-radius:var(--radius); padding:20px; transition:var(--transition); }
.calendar-item:hover { background:rgba(255,255,255,0.18); transform:translateY(-3px); }
.calendar-item .cal-date { font-size:2rem; font-weight:700; color:var(--accent); }
.calendar-item .cal-title { font-size:1rem; font-weight:600; margin-top:8px; }
.calendar-item .cal-desc { font-size:0.85rem; opacity:0.8; margin-top:5px; }
.calendar-section .section-title { color:var(--white); }
.calendar-section .section-title::after { background:var(--accent); }
/* ABOUT */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about-img { border-radius:20px; box-shadow:var(--shadow-lg); overflow:hidden; }
.about-img img { width:100%; display:block; transition:transform 0.5s ease; }
.about-img:hover img { transform:scale(1.03); }
.about-content h3 { font-size:1.8rem; margin-bottom:20px; color:var(--text-dark); line-height:1.3; }
.about-content p { margin-bottom:18px; color:var(--text-light); font-size:1.05rem; }

/* SERVICES CARDS */
.services-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(320px,1fr)); gap:30px; }
.service-card { background:var(--white); border-radius:var(--radius); padding:35px 30px; box-shadow:var(--shadow-sm); border-top:4px solid transparent; transition:var(--transition); cursor:pointer; position:relative; overflow:hidden; }
.service-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg, var(--primary), var(--accent)); transform:scaleX(0); transform-origin:left; transition:transform 0.4s ease; }
.service-card:hover::before { transform:scaleX(1); }
.service-card:hover { transform:translateY(-8px) scale(1.02); box-shadow:var(--shadow-lg); }
.service-card .service-icon { width:65px; height:65px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.6rem; color:var(--white); margin-bottom:20px; background:linear-gradient(135deg, var(--primary), var(--primary-dark)); }
.service-card h4 { font-size:1.2rem; color:var(--text-dark); margin-bottom:10px; font-weight:600; }
.service-card p { color:var(--text-light); font-size:0.95rem; line-height:1.6; }

/* WHY CHOOSE US */
.why-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:30px; }
.why-card { padding:30px; border-radius:var(--radius); background:var(--white); box-shadow:var(--shadow-sm); transition:var(--transition); border-left:4px solid var(--accent); }
.why-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); }
.why-card h4 { color:var(--primary-dark); font-size:1.1rem; margin-bottom:8px; }
.why-card p { color:var(--text-light); font-size:0.9rem; }
.why-card i { color:var(--accent); font-size:1.8rem; margin-bottom:15px; }

/* COUNTERS */
.counters-section { background:linear-gradient(135deg, var(--primary-dark), var(--primary)); padding:60px 0; }
.counters-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; text-align:center; color:var(--white); }
.counter-box .counter-number { font-size:3rem; font-weight:700; }
.counter-box .counter-label { font-size:1rem; opacity:0.85; margin-top:5px; }
.counter-box .counter-icon { font-size:2rem; margin-bottom:10px; opacity:0.7; }

/* CLIENTS RIBBON */
.clients-ribbon { overflow:hidden; padding:50px 0; background:var(--white); }
.clients-title { text-align:center; font-size:1.5rem; color:var(--text-dark); margin-bottom:30px; font-weight:700; }
.clients-track { display:flex; align-items:center; width:max-content; animation:scrollX 25s linear infinite; }
.client-card { flex-shrink:0; padding:0 40px; }
.client-card img { height:60px; object-fit:contain; filter:grayscale(100%); opacity:0.5; transition:var(--transition); }
.client-card:hover img { filter:grayscale(0%); opacity:1; }
@keyframes scrollX { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* TESTIMONIALS */
.testimonials-wrapper { position:relative; overflow:hidden; }
.testimonials-track { display:flex; transition:transform 0.5s ease; }
.testimonial-card { min-width:100%; padding:0 20px; box-sizing:border-box; }
.testimonial-inner { background:var(--white); border-radius:var(--radius); padding:40px; box-shadow:var(--shadow-md); max-width:800px; margin:0 auto; text-align:center; border-top:4px solid var(--accent); }
.testimonial-inner .quote { font-size:1.05rem; color:var(--text-light); line-height:1.8; font-style:italic; margin-bottom:25px; }
.testimonial-inner .author { font-weight:700; color:var(--primary-dark); font-size:1.1rem; }
.testimonial-inner .company { color:var(--accent); font-size:0.9rem; font-weight:500; }
.testimonial-inner .quote-icon { font-size:3rem; color:var(--accent); opacity:0.2; margin-bottom:15px; }
.testimonial-nav { display:flex; justify-content:center; gap:10px; margin-top:25px; }
.testimonial-dot { width:10px; height:10px; border-radius:50%; background:var(--border); border:none; cursor:pointer; transition:var(--transition); }
.testimonial-dot.active { background:var(--accent); }
/* VIDEO SECTION */
.video-section { position:relative; background:url('../assets/images/hero/ChatGPT Image Apr 19, 2026, 11_20_38 AM.png') center/cover fixed; padding:120px 0; text-align:center; }
.video-section::before { content:''; position:absolute; inset:0; background:rgba(7,64,38,0.85); }
.video-content { position:relative; z-index:1; color:var(--white); }
.play-btn { width:80px; height:80px; background:var(--accent); color:var(--white); border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:2rem; margin-bottom:25px; padding-left:5px; cursor:pointer; animation:pulse 2s infinite; box-shadow:0 10px 20px rgba(217,4,41,0.4); border:none; }
.video-content h2 { font-size:2.2rem; margin-bottom:20px; font-weight:700; }
.video-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; margin-top:40px; }
.video-card { background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.2); border-radius:var(--radius); padding:25px; text-align:left; transition:var(--transition); }
.video-card:hover { background:rgba(255,255,255,0.18); transform:translateY(-3px); }
.video-card h5 { color:var(--white); margin-bottom:8px; }
.video-card p { color:rgba(255,255,255,0.7); font-size:0.85rem; }

/* NOTIFICATIONS */
.notifications-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:25px; }
.notification-card { background:var(--white); border-radius:var(--radius); padding:25px; box-shadow:var(--shadow-md); transition:var(--transition); border-left:4px solid var(--accent); }
.notification-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }
.noti-date { display:inline-block; background:rgba(10,92,54,0.1); color:var(--primary); padding:5px 12px; border-radius:50px; font-weight:600; font-size:0.8rem; margin-bottom:12px; }
.notification-card h4 { font-size:1.05rem; line-height:1.4; margin-bottom:10px; color:var(--text-dark); }
.notification-card p { color:var(--text-light); font-size:0.9rem; margin-bottom:15px; }
.notification-card a { color:var(--accent); font-weight:600; font-size:0.9rem; }

/* COURT RULINGS */
.rulings-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:25px; }
.ruling-card { background:var(--white); padding:25px; border-radius:var(--radius); box-shadow:var(--shadow-sm); border-top:3px solid var(--primary); transition:var(--transition); }
.ruling-card:hover { box-shadow:var(--shadow-md); transform:translateY(-3px); }
.ruling-card .ruling-icon { color:var(--primary); font-size:1.5rem; margin-bottom:12px; }
.ruling-card h4 { font-size:1rem; line-height:1.5; color:var(--text-dark); }

/* CONTACT */
.contact-wrap { display:grid; grid-template-columns:1fr 1fr; background:var(--white); border-radius:20px; overflow:hidden; box-shadow:var(--shadow-lg); }
.map-side { min-height:450px; }
.map-side iframe { width:100%; height:100%; border:0; }
.contact-info-side { padding:40px 45px; background:var(--primary-dark); color:var(--white); }
.contact-info-side h2 { margin-bottom:20px; font-size:1.8rem; }
.contact-info-side > p { color:rgba(255,255,255,0.8); margin-bottom:30px; }
.contact-detail-box { display:flex; margin-bottom:25px; align-items:flex-start; }
.contact-detail-box i { font-size:1.4rem; color:var(--accent); margin-right:18px; margin-top:4px; flex-shrink:0; }
.contact-detail-box h5 { font-size:1rem; margin-bottom:4px; }
.contact-detail-box p { color:rgba(255,255,255,0.75); font-size:0.9rem; }

/* ZOHO FORM OVERRIDE */
#crmWebToEntityForm { border-radius:var(--radius); }
#crmWebToEntityForm .zcwf_row { margin:12px 0; }
#crmWebToEntityForm input[type=text], #crmWebToEntityForm textarea { border-radius:8px !important; padding:10px 14px !important; font-family:'Poppins',sans-serif !important; }
#crmWebToEntityForm .formsubmit { background:var(--accent) !important; color:var(--white) !important; border-radius:50px !important; padding:10px 30px !important; font-family:'Poppins',sans-serif !important; }

/* CALLBACK MODAL */
.modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.6); z-index:2000; display:none; align-items:center; justify-content:center; backdrop-filter:blur(4px); }
.modal-overlay.active { display:flex; }
.modal-box { background:var(--white); border-radius:16px; padding:40px; max-width:450px; width:90%; position:relative; box-shadow:var(--shadow-lg); animation:modalIn 0.3s ease; }
.modal-box h3 { color:var(--primary-dark); margin-bottom:20px; font-size:1.5rem; }
.modal-box .close-modal { position:absolute; top:15px; right:20px; font-size:1.5rem; cursor:pointer; color:var(--text-light); background:none; border:none; }
.modal-box .form-group { margin-bottom:16px; }
.modal-box label { display:block; font-weight:600; margin-bottom:6px; font-size:0.9rem; }
.modal-box input { width:100%; padding:12px 16px; border:1px solid var(--border); border-radius:8px; font-family:inherit; font-size:0.95rem; transition:var(--transition); }
.modal-box input:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(10,92,54,0.1); }
@keyframes modalIn { from{opacity:0;transform:scale(0.9)} to{opacity:1;transform:scale(1)} }
/* ===== SOCIAL FEEDS WIDGETS ===== */
.social-feeds-grid {
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-top: 30px;
}
.feed-column {
    background: #fff;
    padding: 25px;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
}
.feed-title {
    font-size: 1.25rem;
    color: var(--primary-dark);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 15px;
}
.widget-container {
    min-height: 400px;
    width: 100%;
    position: relative;
}
/* Placeholder Styling */
.widget-placeholder {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #f8f9fa;
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    color: #6c757d;
    padding: 20px;
}
.widget-placeholder i {
    font-size: 2.5rem;
    margin-bottom: 15px;
    opacity: 0.5;
}
/* Auto-hide placeholder if Elfsight widget loads */
.widget-container iframe,
.widget-container .elfsight-app-loaded {
    position: relative;
    z-index: 2;
    background: #fff;
}
/* FLOATING ELEMENTS */
.whatsapp-float { position:fixed; bottom:30px; right:30px; width:60px; height:60px; background:#25d366; color:white; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:32px; box-shadow:0 10px 20px rgba(37,211,102,0.4); z-index:1000; transition:var(--transition); }
.whatsapp-float:hover { transform:scale(1.1); background:#1ebe57; }
.enquiry-float { position:fixed; right:-50px; top:50%; transform:translateY(-50%) rotate(-90deg); background:var(--accent); color:var(--white); padding:12px 25px; font-weight:600; border-radius:8px 8px 0 0; z-index:1000; cursor:pointer; box-shadow:0 -5px 15px rgba(217,4,41,0.3); transition:var(--transition); font-size:0.95rem; letter-spacing:0.5px; }
.enquiry-float:hover { background:var(--accent-hover); right:-40px; }

/* FOOTER */
footer { background:#042416; color:#ccc; padding:70px 0 20px; }
.footer-grid { display:grid; grid-template-columns:2.5fr 1fr 1fr 1.5fr; gap:40px; margin-bottom:50px; }
.footer-logo img { height:55px; margin-bottom:20px; background:#fff; padding:8px; border-radius:10px; }
.footer-title { color:var(--white); font-size:1.15rem; margin-bottom:18px; font-weight:600; position:relative; padding-bottom:10px; }
.footer-title::after { content:''; position:absolute; left:0; bottom:0; width:40px; height:3px; background:var(--accent); border-radius:2px; }
.footer-links li { margin-bottom:10px; }
.footer-links a { color:#ccc; font-size:0.9rem; transition:var(--transition); }
.footer-links a:hover { color:var(--accent); padding-left:5px; }
.social-footer { display:flex; gap:10px; margin-top:20px; }
.social-footer a { width:38px; height:38px; background:rgba(255,255,255,0.06); display:flex; align-items:center; justify-content:center; border-radius:50%; color:var(--white); font-size:1rem; transition:var(--transition); }
.social-footer a:hover { background:var(--accent); transform:translateY(-4px); }
.footer-bottom { text-align:center; padding-top:20px; border-top:1px solid rgba(255,255,255,0.1); font-size:0.85rem; color:rgba(255,255,255,0.5); }

/* TEAM / ADVISORS */
.team-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:35px; }
.team-card { background:var(--white); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); transition:var(--transition); }
.team-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-5px); }
.team-card img { width:100%; height:320px; object-fit:cover; object-position:top; }
.team-info { padding:25px; }
.team-info h4 { color:var(--primary-dark); font-size:1.25rem; margin-bottom:5px; }
.team-info .designation { color:var(--accent); font-weight:600; font-size:0.9rem; margin-bottom:10px; }
.team-info .short-bio { color:var(--text-light); font-size:0.9rem; line-height:1.5; margin-bottom:15px; }
.btn-expand { font-size:0.9rem; font-weight:600; color:var(--primary); background:transparent; border:none; cursor:pointer; font-family:inherit; padding:0; transition:var(--transition); }
.btn-expand:hover { color:var(--accent); }
.team-expanded { max-height:0; overflow:hidden; transition:max-height 0.4s ease; }
.team-card.expanded .team-expanded { max-height:500px; }
.expanded-inner { padding:0 25px 25px; border-top:1px solid var(--border); }
.expanded-inner h5 { color:var(--primary-dark); font-size:1rem; margin:15px 0 8px; }
.expanded-inner p { color:var(--text-light); font-size:0.88rem; line-height:1.6; }
.expertise-list li { font-size:0.88rem; color:var(--text-dark); margin-bottom:6px; display:flex; align-items:center; font-weight:500; }
.expertise-list li i { color:var(--accent); margin-right:8px; font-size:0.9rem; }

/* PAGE HERO (subpages) */
.page-hero { background:linear-gradient(135deg, var(--primary-dark), var(--primary)); padding:140px 0 60px; text-align:center; color:var(--white); }
.page-hero h1 { font-size:2.8rem; font-weight:700; margin-bottom:15px; }
.page-hero p { font-size:1.1rem; opacity:0.85; max-width:600px; margin:0 auto; }

/* BLOG CARDS */
.blog-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:30px; }
.blog-card { background:var(--white); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm); transition:var(--transition); }
.blog-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-5px); }
.blog-card .blog-img { height:200px; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:3rem; }
.blog-card .blog-body { padding:25px; }
.blog-card .blog-date { font-size:0.8rem; color:var(--accent); font-weight:600; margin-bottom:8px; }
.blog-card h4 { font-size:1.1rem; margin-bottom:10px; line-height:1.4; }
.blog-card p { color:var(--text-light); font-size:0.9rem; margin-bottom:15px; }

/* ANIMATIONS */
@keyframes slideUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
@keyframes pulse { 0%{box-shadow:0 0 0 0 rgba(217,4,41,0.7)} 70%{box-shadow:0 0 0 15px rgba(217,4,41,0)} 100%{box-shadow:0 0 0 0 rgba(217,4,41,0)} }
.animate-in { opacity:0; transform:translateY(30px); transition:opacity 0.6s ease, transform 0.6s ease; }
.animate-in.visible { opacity:1; transform:translateY(0); }

/* RESPONSIVE */
@media(max-width:1024px) {
  .hero-title { font-size:2.8rem; }
  .counters-grid { grid-template-columns:repeat(2,1fr); }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:991px) {
  .menu-toggle { display:block; }
  .nav-links { position:absolute; top:100%; left:0; width:100%; background:var(--white); flex-direction:column; padding:15px 0; box-shadow:var(--shadow-md); max-height:0; overflow:hidden; transition:max-height 0.3s ease; }
  .nav-links.active { max-height:600px; overflow-y:auto; }
  .nav-item { width:100%; }
  .nav-link { padding:12px 30px; border-bottom:1px solid var(--border); border-radius:0; }
  .nav-cta { margin:10px 30px; }
  .dropdown { position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; display:none; background:var(--bg-light); border-radius:0; }
  .nav-item:hover .dropdown { display:block; }
  .about-grid, .contact-wrap { grid-template-columns:1fr; }
  .map-side { min-height:300px; }
  .video-content h2 { font-size:1.6rem; }
  .video-section { padding:80px 0; }
  .page-hero { padding:120px 0 50px; }
  .page-hero h1 { font-size:2.2rem; }
}
@media(max-width:768px) {
  .hero { min-height:500px; }
  .hero-content { padding-top:60px; }
  .hero-title { font-size:1.8rem; }
  .hero-subtitle { font-size:0.95rem; }
  .hero-btns { flex-direction:column; }
  .hero-btns .btn { text-align:center; }
  .section { padding:50px 0; }
  .section-title { font-size:1.7rem; }
  .section-subtitle { font-size:0.95rem; margin-bottom:35px; }
  .services-grid { grid-template-columns:1fr; }
  .blog-grid { grid-template-columns:1fr; }
  .notifications-grid { grid-template-columns:1fr; }
  .rulings-grid { grid-template-columns:1fr; }
  .why-grid { grid-template-columns:1fr; }
  .counters-grid { grid-template-columns:1fr 1fr; gap:20px; }
  .counter-box .counter-number { font-size:2.2rem; }
  .counter-box .counter-label { font-size:0.85rem; }
  .footer-grid { grid-template-columns:1fr; gap:25px; }
  .enquiry-float { display:none; }
  .contact-info-side { padding:25px 20px; }
  .testimonial-inner { padding:25px 20px; }
  .testimonial-inner .quote { font-size:0.95rem; }
  .calendar-section { padding:40px 0; }
  .calendar-grid { grid-template-columns:1fr; }
  .calendar-item .cal-date { font-size:1.5rem; }
  .team-card img { height:250px; }
  .team-grid { grid-template-columns:1fr; }
  .video-cards { grid-template-columns:1fr; }
  .modal-box { padding:25px; margin:15px; }
  .whatsapp-float { bottom:20px; right:20px; width:50px; height:50px; font-size:26px; }
}
@media(max-width:480px) {
  .hero-title { font-size:1.5rem; }
  .counters-grid { grid-template-columns:1fr; }
  .counter-box { padding:15px 0; }
  .page-hero h1 { font-size:1.8rem; }
  .container { width:92%; padding:0 15px; }
}
