/* ===== Alphaa Plus - Custom Styles ===== */
body{ overflow-x:hidden; }
.topbar-link{ transition:.2s; }
.topbar-link:hover{ color:#fff !important; }
.social-ico{ opacity:.85; transition:.2s; }
.social-ico:hover{ opacity:1; transform:translateY(-2px); }

/* Header */
.site-header{ z-index:1030; }
.navbar-nav .nav-link{ color:#22324a; position:relative; }
.navbar-nav .nav-link:hover, .navbar-nav .nav-link.active{ color: var(--clr-primary); }
.dropdown-menu{ margin-top:.5rem !important; }
.dropdown-item:hover{ background: var(--clr-primary); color:#fff; }

/* Hero Slider */
.hero-slide{ position:relative; height:520px; background-size:cover; background-position:center; display:flex; align-items:center; }
.hero-slide.fit-contain{ background-size:contain; background-repeat:no-repeat; background-color:var(--clr-dark); }
.hero-slide::before{ content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(13,43,82,.75) 0%, rgba(13,43,82,.35) 60%, rgba(13,43,82,.1) 100%); }
.hero-slide .hero-content{ position:relative; z-index:2; color:#fff; max-width:640px; }
.hero-slide .hero-content h1{ color:#fff; font-size:2.6rem; font-weight:800; }
@media (max-width:767px){ .hero-slide{ height:380px; } .hero-slide .hero-content h1{ font-size:1.6rem; } }
.carousel-indicators [data-bs-target]{ background:var(--clr-secondary); }

/* Section titles */
.section-title{ font-weight:800; }
.section-sub{ color:#7a8699; max-width:640px; margin:0 auto; }
.section-pad{ padding:70px 0; }
.section-divider{ width:70px; height:4px; background:var(--clr-secondary); margin:14px auto 0; border-radius:2px; }

/* Category cards */
.category-card{ border-radius:16px; overflow:hidden; box-shadow:0 6px 24px rgba(13,43,82,.08); transition:.3s; height:100%; background:#fff; }
.category-card:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(13,43,82,.15); }
.category-card .cat-icon-wrap{ width:70px; height:70px; border-radius:50%; background:rgba(26,86,176,.1); display:flex; align-items:center; justify-content:center; font-size:1.8rem; color:var(--clr-primary); margin:0 auto 16px; }
.category-card img{ height:180px; object-fit:cover; width:100%; }

/* Product cards */
.product-card{ border:1px solid #eef1f5; border-radius:14px; overflow:hidden; transition:.3s; height:100%; background:#fff; }
.product-card:hover{ box-shadow:0 14px 30px rgba(13,43,82,.12); transform:translateY(-4px); }
.product-card .product-img{ height:210px; object-fit:cover; width:100%; background:#f4f6f9; }
.badge-type{ position:absolute; top:12px; left:12px; }

/* Why choose us */
.feature-box{ text-align:center; padding:28px 16px; }
.feature-box .feature-ico{ width:64px; height:64px; border-radius:16px; background:var(--clr-primary); color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.6rem; margin:0 auto 16px; }

/* Testimonials */
.testimonial-card{ background:#fff; border-radius:14px; padding:28px; box-shadow:0 6px 20px rgba(13,43,82,.08); height:100%; }

/* Blog cards */
.blog-card{ border-radius:14px; overflow:hidden; background:#fff; box-shadow:0 6px 20px rgba(13,43,82,.08); height:100%; transition:.3s; }
.blog-card:hover{ transform:translateY(-4px); }
.blog-card img{ height:190px; object-fit:cover; width:100%; }
.blog-cat-badge{ background:var(--clr-secondary); }

/* CTA */
.cta-section{ background:linear-gradient(120deg, var(--clr-primary), var(--clr-dark)); border-radius:20px; color:#fff; }

/* Footer */
.footer-links li{ margin-bottom:10px; }
.footer-links a{ color:rgba(255,255,255,.7); }
.footer-links a:hover{ color:#fff; padding-left:4px; transition:.2s; }
.social-circle{ width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; color:#fff; transition:.2s; }
.social-circle:hover{ background:var(--clr-secondary); }

/* Floating Call + WhatsApp buttons */
.floating-contact{ position:fixed; right:18px; bottom:30px; z-index:1050; display:flex; flex-direction:column; gap:12px; }
.floating-contact .fc-btn{ width:56px; height:56px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.5rem; box-shadow:0 6px 18px rgba(0,0,0,.25); transition:.25s; text-decoration:none; }
.floating-contact .fc-btn:hover{ transform:scale(1.08); color:#fff; }
.floating-contact .fc-whatsapp{ background:#25D366; }
.floating-contact .fc-call{ background:var(--clr-primary); animation:fc-pulse 2.2s infinite; }
@keyframes fc-pulse{
  0%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 0 rgba(26,86,176,.5); }
  70%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 14px rgba(26,86,176,0); }
  100%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 0 rgba(26,86,176,0); }
}
@media (max-width:767px){ .floating-contact{ bottom:80px; right:14px; } .floating-contact .fc-btn{ width:50px; height:50px; font-size:1.3rem; } }

/* Mobile sticky bar */
.mobile-sticky-bar{ position:fixed; bottom:0; left:0; right:0; z-index:1040; }

/* FAQ */
.faq-accordion .accordion-button:not(.collapsed){ background:var(--clr-primary); color:#fff; }
.faq-accordion .accordion-button:focus{ box-shadow:none; }

/* Rich text content (pages, blog posts) */
.content-body{ line-height:1.8; }
.content-body h2,.content-body h3,.content-body h4{ margin-top:1.5em; font-family:var(--font-family); color:var(--heading-color); }
.content-body p{ margin-bottom:1em; }
.content-body ul,.content-body ol{ margin-bottom:1em; padding-left:1.5em; }
.content-body img{ max-width:100%; height:auto; border-radius:10px; margin:1em 0; }
.content-body a{ text-decoration:underline; }

/* Directors */
.director-card{ text-align:center; }
.director-card img{ width:180px; height:180px; object-fit:cover; border-radius:50%; margin:0 auto 16px; border:4px solid #eef1f5; }

/* Inner page header */
.page-hero{ position:relative; background-color:var(--clr-dark); background-image:var(--page-header-bg); background-size:cover; background-position:center; color:#fff; padding:70px 0; overflow:hidden; }
.page-hero::before{ content:''; position:absolute; inset:0; background:rgba(13,43,82,.72); }
.page-hero .container{ position:relative; z-index:2; }
.page-hero h1{ color:#fff; }
.breadcrumb-custom a{ color:rgba(255,255,255,.7); }
.breadcrumb-custom .active{ color:#fff; }

/* Gallery images on product detail */
.thumb-img{ height:90px; object-fit:cover; cursor:pointer; border-radius:8px; border:2px solid transparent; }
.thumb-img.active{ border-color:var(--clr-primary); }
