*,
::before,
::after
{
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

/* GLOBAL VARIABLES - Extracted from Shreemat Orchid Brand Style */
:root {
  --primary-color: #003366;  
  --secondary-yellow: #ff9900;
  --accent-color: #0056b3;
  --maroon-color:#782726;
  --green:#1D472F;
  
  --primary-red: #a30000; 
  --text-dark: #333;
  --white: #fff;
  --bg-dark: #212529;
  --text-main: #333333;
  --text-muted: #6c757d;
  --text-light: #ffffff;
  --font-main: 'Poppins', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

/* Global Reset & Base Styles */
a {text-decoration: none; color: #000;}
ul {padding: 0px; margin: 0;}
ul li {list-style: none;}
.justify-items-center {justify-items: center;}

h1,h2,h3,h4,h5,h6{font-weight:600;}

h2{font-size: 2.5rem;}
p{font-size: 1rem;}

body {
  font-family: var(--font-main); 
  color: var(--text-main); 
  background-color: var(--bg-white); 
  line-height: 1.6;
  /* overflow: hidden; */
}

.bg-brand-primary {background-color: var(--primary-red) !important;}
.text-primary-red{color: var(--primary-red);}
.text-primary-green{color: var(--green);}
.text-secondary-Dyellow{color: var(--secondary-yellow);}
.text-brand-primary {color: var(--primary-color) !important;}
.text-brand-secondary {color: var(--secondary-yellow) !important;}
.btn-brand {background-color: var(--secondary-yellow); color: white; border-radius: 4px; padding: 10px 25px; transition: 0.3s; border: none;}
.btn-brand:hover {background-color: var(--primary-color); color: white;}
.btn-category {background-color: var(--secondary-yellow); color: white; border-radius: 4px; padding: 8px 15px; transition: 0.3s; border: none; font-size: 13px;}
.btn-category:hover {background-color: var(--primary-red); color: white;}
.product-card {border: 1px solid #eee; transition: transform 0.3s, box-shadow 0.3s; border-radius: 8px; overflow: hidden;}
.product-card:hover {transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);}
section {padding: 50px 0;}

/* TOP BAR STYLES */
.top-bar {background-color: var(--primary-red); border-bottom: 1px solid #ddd; font-size: 14px; padding: 15px 0;}
.top-bar a {text-decoration: none; color: var(--text-light); font-weight: 500; transition: 0.3s;}
.top-bar a:hover {color: var(--accent-color);}
.btn-enquiry {background-color: var(--secondary-yellow); color: white !important; padding: 10px 15px; border-radius: 20px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px;}
.btn-enquiry:hover {background-color: var(--primary-color); box-shadow: 0 4px 8px rgba(0,0,0,0.1);}
.contact-info i {margin-right: 8px; color: var(--text-light);}

/* NAVBAR CUSTOM STYLES ===================================== */

/* NAVBAR BASE */
.navbar{z-index: 9999;}
.custom-nav {background: var(--white); padding: 0; box-shadow: 0 4px 10px rgba(0,0,0,0.05);}
.navbar-brand .logo {width:190px; height: 70px;}

/* NAV LINKS */
.nav-link {color: var(--text-dark) !important; font-weight: 600; font-size: 13.5px; padding: 25px 10px !important; transition: 0.3s; text-transform: uppercase;}
.nav-link i {font-size: 10px; margin-left: 2px; color: var(--brand-red);}
.nav-link:hover, .dropdown:hover > .nav-link {color: var(--primary-red) !important;}

/* MEGA MENU (INDOOR) */
.mega-menu {width: 90vw; left: 5vw !important; border: none; border-top: 3px solid var(--primary-red); padding: 30px; border-radius: 10px; box-shadow: 0 15px 40px #0000001a;}
.menu-title {font-weight: 700; font-size: 15px; margin-bottom: 12px; color: var(--primary-red); text-transform: capitalize;}
.mega-menu .nav-item{margin-bottom: 10px;}

/* STANDARD DROPDOWNS */
.standard-dropdown {border-radius: 10px; border: none; border-top: 3px solid var(--primary-red); box-shadow: 0 5px 15px #0000001a; min-width: 230px; padding: 10px 0;}
.standard-dropdown .nav-item{margin-bottom: 10px;}
.dropdown-link {font-size: 13px; padding: 10px 20px; color: var(--text-muted); font-weight: 500; border-bottom: 1px solid #f9f9f9; text-transform: uppercase;}
.dropdown-link:hover {background-color: transparent; color: var(--primary-red); padding-left: 25px; transition: 0.3s ease;}
.dropdown-toggle::after{display: none;}

/* RESPONSIVE MEDIA QUERIES --------------------------------- */
@media (max-width: 991px) {
    .mega-menu {width: 100%; left: 0 !important; position: relative !important; box-shadow: none; padding: 15px;}
    .navbar-brand img { height: 55px; }
    .nav-link { padding: 12px 0 !important; border-bottom: 1px solid #eee; }
    .navbar-collapse { background: white; padding: 15px; position: absolute; top: 80px; right: 0; left: 0;}
}

/* DESKTOP HOVER */
@media (max-width: 991px) {
    .mega-menu{max-height: 400px; overflow-y: scroll;}
}

@media (min-width: 992px) {
    .dropdown:hover > .dropdown-menu {display: block; margin-top: 0;}
}

@media (max-width: 767px){
    .navbar-brand .logo { width: 170px; }
    .mega-menu{max-height: 400px; overflow-y: scroll;}

}

/* ======= Carousel ====== */
/* HERO CAROUSEL STYLES */
.hero-carousel {width: 100%; position: relative;}
.hero-img {filter: drop-shadow(0 20px 30px rgba(0,0,0,0.3)); transition: transform 0.5s ease;}
.carousel-item-next.carousel-item-start .hero-img,
.carousel-item-prev.carousel-item-end .hero-img,
.active.carousel-item-start .hero-img,
.active.carousel-item-end .hero-img {transform: scale(1.1);}
.bg-yellow-text {background-color: var(--brand-yellow); color: var(--brand-red); display: inline-block; padding: 5px 20px; border-radius: 50px;}
.specs-box p {font-size: 1.2rem; margin-bottom: 5px; border-left: 4px solid var(--brand-yellow); padding-left: 15px;}

/* CAROUSEL CUSTOM CONTROLS */
.carousel-control-prev, .carousel-control-next {width: 5%;}
.carousel-indicators [data-bs-target] {width: 12px; height: 12px; border-radius: 50%; background-color: var(--white);}

/* RESPONSIVE HERO */
@media (max-width: 768px) {
    .banner-overlay {height: auto; padding: 60px 0;}
    .display-3 {font-size: 2rem; margin-top: 20px;}
    .hero-img {max-height: 250px;}
}

/* TRUST BADGES STYLES ====================================== */
.trust-badges-section {background-color: var(--white);}
.badge-card {background: var(--white); border: 1px solid #e0e0e0; padding: 15px; text-align: center; border-radius: 4px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.45); transition: all 0.3s ease-in-out; display: flex; align-items: center; justify-content: center; height: 100%; min-height: 120px;}
.badge-card img {max-height: 80px; width: auto; object-fit: contain; filter: grayscale(20%); transition: filter 0.3s ease;}
.badge-card:hover {transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12); border-color: var(--brand-red);}
.badge-card:hover img {filter: grayscale(0%);}

/* RESPONSIVE ADJUSTMENTS */
@media (max-width: 768px) {
    .badge-card {min-height: 100px; padding: 10px;}
    .badge-card img {max-height: 60px;}
}

/* ABOUT SECTION STYLES ===============================================  */
.about-section {background-color: var(--bg-white); overflow: hidden;}
.text-brand-primary { color: var(--brand-red); }
.text-brand-secondary { color: var(--brand-yellow);}
.about-img-wrapper {padding: 0px;}

/* The floating box on the image */
.experience-badge {position: absolute; bottom: -10px; right: -10px; background: var(--primary-red); color: var(--white); padding: 25px; border-radius: 8px; text-align: center; box-shadow: 0 10px 30px var(--secondary-yellow); border: 4px solid var(--white);}
.experience-badge .number {display: block; font-size: 2.5rem; font-weight: 800; line-height: 1;}
.experience-badge .label {font-size: 0.9rem; text-transform: uppercase; font-weight: 600; letter-spacing: 1px;}
.about-content .display-5 {line-height: 1.2;}
.about-content h1 span{color: var(--secondary-yellow);}

/* RESPONSIVE */
@media (max-width: 991px) {
    .experience-badge {bottom: -50px; right: 0; margin-top: 20px; display: inline-block;}
    .about-img-wrapper {padding: 0; margin-bottom: 30px;}
}

/* CATEGORY SECTION ===================================== */
.category_img_wrapper {width:100%; margin: 0 auto 15px; border-radius: 10px; position: relative; overflow: hidden; border: 3px solid var(--white); box-shadow: 0 5px 15px rgba(0,0,0,0.1); transition: all 0.4s ease;}
.category_img_wrapper img{width: 250px; height: auto;}
.category_card{width: 250px; height: 250px; padding: 6px; overflow: hidden; border-radius: 10px; background-color: #fff;}
.category_card .category_img_wrapper, .category_card .category_img_wrapper img{width: 100%; height: 100%; object-fit:contain;}
.overlay {position: absolute; width: 100%; height: 100%; background-color: rgba(0, 51, 102, 0.9); display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 10px; text-align: center; color: var(--white); transition: all 0.5s ease-in-out;}
.section_title{color: #fff; font-size: 40px;}
.section_title span{color: var(--secondary-yellow);}
.overlay h3 {font-size: 16px; font-weight: 800; margin-bottom: 10px; color: var(--secondary-yellow);}
.overlay p {font-size: 14px; line-height: 1.3; margin-bottom: 10px;}

/* Top to Bottom */
.overlay-top { top: -100%; left: 0; }
.category_img_wrapper:hover .overlay-top { top: 0; }

/* Left to Right */
.overlay-left { top: 0; left: -100%; }
.category_img_wrapper:hover .overlay-left { left: 0; }

/* Bottom to Top */
.overlay-bottom { bottom: -100%; left: 0; }
.category_img_wrapper:hover .overlay-bottom { bottom: 0; }

/* Right to Left */
.overlay-right { top: 0; right: -100%; }
.category_img_wrapper:hover .overlay-right { right: 0; }

.category_card:hover .category_img_wrapper {border-color: var(--secondary-yellow); transform: scale(1.05);}

/* Responsive Media Queries */

@media (max-width:767px){
.popular_categories .section_title{font-size: 1.5rem;}
}
/* Category section end ===================================================== */

/* UNIQUE PRESPECTIVE ==================================== */
.design-values {background-color: #444; background-image: url('path-to-your-subtle-pattern.png'); position: relative;}
.design-values p {color: #cccccc; line-height: 1.8;}

/* Responsive Media queries */

@media (max-width:991px){
    .design-values h2{font-size: 1.5rem;}
}

@media (max-width:767px){
.design-values h2{font-size: 1.2rem;}
}
/* Corporate Section ======================================== */
/* SECTION SPACING */
.corporate-profile {padding: 80px 0; background-color: var(--white);}
.container {max-width: 1200px; margin: 0 auto; padding: 0 15px;}
.profile-row {display: flex; align-items: center; gap: 50px; flex-wrap: wrap;}
.profile-content, .profile-visual {flex: 1;}
.section-title {color: var(--primary-red); font-weight: 800; text-transform: uppercase; margin-bottom: 25px; font-size: 2.5rem;}
.section-title span {color: var(--secondary-yellow);}
.profile-lead {color: var(--text-main); font-size: 1rem; font-weight: 500; line-height: 1.5; margin-bottom: 20px;}
.profile-text {color: var(--text-muted); font-size: 1rem; line-height: 1.7; margin-bottom: 30px;}
.feature-grid {display: flex; gap: 10px; margin-bottom: 35px;}
.feature-item {display: flex; align-items: center;}
.feature-item i {color: var(--secondary-yellow); margin-right: 10px; font-size: 1.1rem;}
.feature-item span {font-weight: 600;color: var(--text-main);}
.image-container {position: relative; width: 100%;}
.image-container img {width: 100%; border-radius: 8px; box-shadow: 0 15px 35px rgba(0,0,0,0.15); border-bottom: 10px solid var(--maroon-color);}

/* RESPONSIVE MEDIA QUERIES */
@media (max-width: 991px) {
    .profile-row {flex-direction: column; text-align: center;}
    .feature-grid {justify-content: center;}
    .section-title {font-size: 2rem;}
}

@media (max-width: 576px) {
    .corporate-profile {padding: 50px 0;}
    .feature-grid {flex-direction: column; gap: 10px;}
    .btn-corporate {width: 100%; text-align: center;}
    .section-title {font-size: 1.5rem;}
}

/* Company Highlights ======================================== */
/* HIGHLIGHTS SECTION */
.highlights-section {padding: 40px 0; background-color: var(--white);}
.highlights-row {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;}
.highlight-card {border: 1px solid #eeeeee; padding: 20px; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; background: var(--white); border-radius: 4px;}
.highlight-card:hover {border-color: var(--primary-red); box-shadow: 0 10px 20px rgba(0,0,0,0.05); transform: translateY(-3px);}
.icon-box {font-size: 2.5rem; color: var(--secondary-yellow); margin-right: 15px; display: flex; align-items: center;}
.info-box {display: flex; flex-direction: column;}
.info-box .top-text {font-size: 13px; font-weight: 800; color: var(--primary-color); line-height: 1.1; letter-spacing: 0.5px;}
.info-box .bottom-text {font-size: 15px; font-weight: 900; color: var(--primary-red); margin-top: 2px;}

/* RESPONSIVE MEDIA QUERIES */

@media (max-width: 991px) {
  .highlights-row {grid-template-columns: repeat(2, 1fr);}
}

@media (max-width: 576px) {
    .highlights-row {grid-template-columns: 1fr;}
    .highlight-card {justify-content: flex-start; padding-left: 30px;}
}

/* Our Client section ===================================== */
.our_client .item img {max-width: 100%; height: auto; display: block; margin: 0 auto; /* filter: grayscale(100%); */ transition: filter 0.3s ease;}
/* .our_client .item img:hover {filter: grayscale(0%);} */

/* Owl Carousel */
#owl-demo .item{margin: 10px; background: #fff; box-shadow: 0px 1px 8px 0px #000; padding: 10px;}
#owl-demo .item img{display: block; width: 100%; height: auto;}

/* Responsive */
@media (max-width: 767px) {
  .client_heading h2 {
    font-size: 1.5rem; /* Slightly smaller text for mobile */
  }
}

/* Footer Section ========================================= */
.main-footer {background-color: #f5ebeb; color: var(--bg-dark); padding: 50px 0 0 0; font-family: var(--font-main);}
.footer-logo {width: 250px; height: 100%;}
.footer-text {font-size: 0.9rem; line-height: 1.8;}
.footer-heading {color: var(--secondary-yellow); font-size: 1.15rem; font-weight: 700; text-transform: uppercase; margin-bottom: 30px; position: relative; padding-bottom: 12px;}
.footer-heading::after {content: ''; position: absolute; left: 0; bottom: 0; width: 40px; height: 3px; background-color: var(--primary-red);}
.footer-links li {margin-bottom: 12px;}
.footer-links a {text-decoration: none; transition: 0.3s ease; font-size: 0.95rem;}
.footer-links a:hover {color: var(--secondary-yellow); padding-left: 8px;}
.contact-item {display: flex; align-items: center;}
.contact-item i {color: var(--secondary-yellow); margin-right: 12px; font-size: 1.1rem;}
.contact-item a {text-decoration: none;}
.addr-item {font-size: 0.8rem; border-left: 2px solid var(--secondary-yellow); padding-left: 10px; margin-bottom: 10px; line-height: 1.4;}
.footer-map {width: 100%; height: 160px; border-radius: 6px; overflow: hidden; border: 1px solid #333;}
.footer-map iframe {width: 100%; height: 100%; border: 0;}
.footer-copyright {background-color: var(--primary-red); padding: 20px 0; border-top: 1px solid #2a2a2a;}
.footer-copyright p {font-size: 0.85rem; color: #ffffff;}
.footer-copyright span a{color: var(--secondary-yellow);}

/* RESPONSIVE TWEAKS */
@media (max-width: 991px) {
    .main-footer { padding: 60px 0 0 0; }
    .footer-heading { margin-bottom: 20px; }
}

@media (max-width:767px){
    .footer-logo {width: 170px;}
}

@media (max-width: 576px) {
    .addr-item { border-left: none; border-bottom: 1px solid #333; padding-bottom: 5px; }
    .footer-about, .footer-quick-content, .footer-address {text-align: left !important; justify-items: flex-start;}
}

/* -------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

/* ==================== about us page css ==================== */
/* About Page Specific Styles */
.aboutPage-header {background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(../images/about-page-img/about-banner.webp) no-repeat center / cover; height: 300px;}
.aboutPage-header h1 span {color: var(--primary-red);}
.about-tabs-section {background-color: #fcfcfc;}
.breadcrumb .breadcrumb-item::before {color: var(--text-light);}

/* Sidebar Nav Styles */

.about-modern-section .bttn-box {position: sticky; top: 100px; z-index: 10;}
.custom-modern-tabs .nav-link2 {background: #fff; color: #444; border-radius: 12px; font-weight: 600; border: 1px solid rgba(0,0,0,0.05); transition: all 0.3s ease; padding: 15px 10px;}
.custom-modern-tabs .nav-link2.active {background: var(--green); color: var(--secondary-yellow) !important; transform: translateX(10px); box-shadow: 0 10px 20px rgba(13, 110, 253, 0.2) !important;}
.custom-modern-tabs .nav-link2:hover:not(.active) {background: #f8f9fa; transform: translateX(5px);}

/* Content Box Animation */
.tab-pane h2{color: var(--green);}
.tab-pane ul li strong{margin-right: 10px;}
.modern-tab-content {border: 1px solid rgba(0,0,0,0.05); min-height: 500px;}
.transition-up {transition: transform 0.3s ease;}
.transition-up:hover {transform: translateY(-10px);}

/* Mobile Adjustments */
@media (max-width: 991px) {
    .custom-modern-tabs {flex-direction: row !important; column-gap: 10px; white-space: nowrap; /* padding-bottom: 10px; */}
    .custom-modern-tabs .nav-link {margin-right: 10px; transform: none !important; padding: 10px 15px !important;}
    .custom-modern-tabs .nav-link.active {transform: scaleY(1.05) !important;}
}

@media (max-width: 767px) {
    .breadcrumb{font-size: 12px;}
    .aboutPage-header {height: 190px;}
    .aboutPage-header h1 {font-size: 1.5rem;}
    .custom-modern-tabs {flex-direction: column !important; row-gap: 15px;  padding-bottom: 10px !important;}
    .custom-modern-tabs .nav-link2 {padding: 10px 10px !important; font-size: 14px;}
    .custom-modern-tabs .nav-link.active {transform: scaleY(1.05) !important;}
    .tab-pane h2{font-size: 1.2rem !important;}
     p{font-size: 14px !important;}
}

/* ================ contact Us Page Styles ================ */
.contact-info-wrapper .icon-box {font-size: 1rem;}

/* Responsive Media Queries */
@media (max-width: 767px) {
}


/* ================= Certificate Page Section ===================== */
.product-01{padding: 40px 0;}
.product-02 h2{margin-bottom: 20px;}
.pro-pdf {position: relative;}
.pro-pdf img {width: 80px; position: absolute; z-index: 999; margin-top: 10px; right: 0px; margin-right: 2px;}
.certificate{padding: 40px 0; background-color: #f2f2f2 !important;}
.certificate-01 {border: 2px solid var(--secondary-yellow);}
.product-image{border: 2px solid var(--secondary-yellow);}
.product-04{padding: 40px 0;}

.certificate {padding-top: 2.5rem; padding-bottom: 2.5rem; box-sizing: border-box;}
.certificate .container > .row {justify-content: center; row-gap: 1.25rem;}
.certificate .certificate-01 {display: flex; justify-content: center; align-items: center; text-align: center; padding: .5rem;}
.certificate .certificate-01 img, .certificate .product-image img {max-width: 100%; width: 100%; height: auto; display: inline-block; object-fit: contain; margin: 0 auto; border-radius: 6px;}
.product-01 .row {justify-content: center; gap: 0rem;}

/* Responsive Media Query========================= */
@media (max-width: 767.98px) {
  .product-01 .col-lg-3 {flex: 0 0 48%; max-width: 48%;}
  .certificate .certificate-01 img {max-width: 420px;}
}

/* single-column on very small screens */
@media (max-width: 479.98px) {
  .product-01 .col-lg-3 {flex: 0 0 100%; max-width: 100%;}
  .certificate .certificate-01 img {max-width: 100%;}
}

/* ====================================== Simple Panel Light Detail =============================== */
.product-detail-page .section_title{color: var(--green);}

/* Gallery Hover Effect */
.gallery-img {cursor: pointer; transition: transform 0.3s ease;}
.gallery-img:hover {transform: scale(1.05);}

/* Custom Table Styling */
.custom-product-table thead th {background-color: #f8f9fa; color: #333; font-weight: 700; border-bottom: 2px solid #dee2e6; font-size: 0.9rem; white-space: nowrap;}
.custom-product-table tbody td {font-size: 0.85rem; color: #555; padding: 12px 8px;}

/* Lightbox Styling */
.lightbox-overlay {display: none; position: fixed; z-index: 9999; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.9); justify-content: center; align-items: center;}
.lightbox-content {max-width: 90%; max-height: 80%; border-radius: 5px; }
.close-btn {position: absolute; top: 20px; right: 35px; color: #fff; font-size: 40px; font-weight: bold; cursor: pointer;}

.modal.show .modal-dialog{top: 100px;}


/* Mobile Adjustments */
@media (max-width: 767px) {
    .product-detail-page .section_title {font-size: 1.9rem;}
    .product-info h2 { font-size: 1.5rem; }
    .table-responsive { border: 1px solid #eee; border-radius: 8px; }
    .modal.show .modal-dialog{top: 100px;}
}