/* =============================================================
   Astra Scientific — Modern Redesign Stylesheet
   Bootstrap 5 compatible custom styles
   ============================================================= */

:root{
    --astra-primary: #2c6377;
    --astra-primary-dark: #1e4a5c;
    --astra-primary-light: #3a7891;
    --astra-accent: #ff6b35;
    --astra-accent-dark: #e85a24;
    --astra-accent-light: #ff8556;
    --astra-dark: #14222b;
    --astra-text: #2a3a44;
    --astra-muted: #6c7a83;
    --astra-light: #f5f8fa;
    --astra-border: #e4eaef;
    --astra-white: #ffffff;
    --astra-success: #28a745;
    --astra-shadow-sm: 0 2px 8px rgba(20,34,43,.06);
    --astra-shadow-md: 0 8px 24px rgba(20,34,43,.10);
    --astra-shadow-lg: 0 18px 48px rgba(20,34,43,.14);
    --astra-radius: 10px;
    --astra-radius-lg: 18px;
    --astra-transition: all .3s cubic-bezier(.4,0,.2,1);
    --astra-font-display: 'Oswald', 'Segoe UI', sans-serif;
    --astra-font-body: 'Lato', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* ========== RESET & BASE ========== */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
    font-family:var(--astra-font-body);
    color:var(--astra-text);
    background:var(--astra-white);
    line-height:1.65;
    font-size:15px;
    overflow-x:hidden;
    margin:0;
    padding-top:96px;
}

h1,h2,h3,h4,h5,h6{
    font-family:var(--astra-font-display);
    font-weight:600;
    color:var(--astra-dark);
    line-height:1.25;
    margin-top:0;
}
h1{font-size:2.6rem}
h2{font-size:2.1rem}
h3{font-size:1.55rem}
h4{font-size:1.25rem}

a{color:var(--astra-primary);text-decoration:none;transition:var(--astra-transition)}
a:hover{color:var(--astra-accent)}

img{max-width:100%;height:auto}

/* ========== TOP INFO BAR ========== */
.astra-topbar{
    background:linear-gradient(90deg,var(--astra-primary-dark),var(--astra-primary));
    color:#cfe2eb;
    font-size:.83rem;
    padding:8px 0;
    position:fixed;
    top:0;left:0;right:0;
    z-index:1031;
}
.astra-topbar a{color:#fff;font-weight:500}
.astra-topbar a:hover{color:var(--astra-accent-light)}
.astra-topbar .topbar-divider{
    display:inline-block;width:1px;height:14px;
    background:rgba(255,255,255,.25);
    margin:0 14px;vertical-align:middle;
}
.astra-topbar i{margin-right:6px;color:var(--astra-accent-light)}

/* ========== HEADER / NAVBAR ========== */
.astra-navbar{
    background:#fff;
    box-shadow:var(--astra-shadow-sm);
    padding:14px 0;
    position:fixed;
    top:34px;left:0;right:0;
    z-index:1030;
    transition:var(--astra-transition);
}
.astra-navbar.scrolled{
    padding:8px 0;
    box-shadow:var(--astra-shadow-md);
}
.astra-navbar .navbar-brand{
    padding:0;
    margin-right:auto;
}
.astra-navbar .navbar-brand img{
    height:54px;
    transition:var(--astra-transition);
}
.astra-navbar.scrolled .navbar-brand img{height:42px}

.astra-navbar .nav-link{
    font-family:var(--astra-font-display);
    font-weight:500;
    font-size:.98rem;
    color:var(--astra-dark) !important;
    padding:.6rem 1rem !important;
    text-transform:uppercase;
    letter-spacing:.5px;
    position:relative;
}
.astra-navbar .nav-link::after{
    content:'';
    position:absolute;
    bottom:4px;left:50%;
    width:0;height:2px;
    background:var(--astra-accent);
    transition:var(--astra-transition);
    transform:translateX(-50%);
}
.astra-navbar .nav-link:hover::after,
.astra-navbar .nav-link.active::after{width:60%}
.astra-navbar .nav-link:hover,
.astra-navbar .nav-link.active{color:var(--astra-primary) !important}

.astra-navbar .btn-request{
    background:var(--astra-accent);
    color:#fff;
    padding:10px 22px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:600;
    letter-spacing:.8px;
    border:none;
    box-shadow:0 4px 12px rgba(255,107,53,.32);
}
.astra-navbar .btn-request:hover{
    background:var(--astra-accent-dark);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 18px rgba(255,107,53,.45);
}
.astra-navbar .search-toggle{
    width:42px;height:42px;
    border-radius:50%;
    background:var(--astra-light);
    color:var(--astra-primary);
    display:inline-flex;
    align-items:center;justify-content:center;
    border:none;
}
.astra-navbar .search-toggle:hover{background:var(--astra-primary);color:#fff}

.search-dropdown{
    position:absolute;
    top:100%;right:15px;
    width:340px;
    background:#fff;
    box-shadow:var(--astra-shadow-lg);
    border-radius:var(--astra-radius);
    padding:18px;
    margin-top:12px;
    display:none;
}
.search-dropdown.open{display:block}
.search-dropdown form{display:flex;gap:8px}
.search-dropdown input[type=text]{
    flex:1;border:1px solid var(--astra-border);
    padding:10px 14px;border-radius:8px;outline:none;
}
.search-dropdown input[type=text]:focus{border-color:var(--astra-primary)}
.search-dropdown input[type=submit]{
    background:var(--astra-primary);color:#fff;
    border:none;padding:10px 18px;border-radius:8px;cursor:pointer;
}

/* ========== HERO BANNER ========== */
/* ========== HERO BANNER (Carousel) ========== */
.hero-banner{
    position:relative;
    background:linear-gradient(135deg,#1e4a5c 0%,#2c6377 50%,#3a7891 100%);
    overflow:hidden;
    padding-bottom:0;
}
.hero-banner::before{
    content:'';
    position:absolute;inset:0;
    background-image:
        radial-gradient(circle at 20% 30%,rgba(255,107,53,.15) 0%,transparent 50%),
        radial-gradient(circle at 80% 70%,rgba(58,120,145,.4) 0%,transparent 50%);
    pointer-events:none;
    z-index:1;
}
#heroCarousel{position:relative;z-index:2}
.hero-slide{padding:60px 0 80px}
.hero-text-col{padding:20px 40px 20px 0;color:#fff}
.hero-img-col{padding:10px 0 10px 20px}

.hero-content{
    color:#fff;
    max-width:620px;
}
.hero-eyebrow{
    display:inline-block;
    background:rgba(255,107,53,.18);
    color:#ffd2bc;
    padding:6px 16px;
    border-radius:30px;
    font-size:.8rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:600;
    margin-bottom:22px;
    border:1px solid rgba(255,107,53,.3);
}
.hero-title{
    font-size:3.2rem;
    line-height:1.1;
    color:#fff;
    margin-bottom:20px;
    font-weight:700;
    text-shadow:0 2px 20px rgba(0,0,0,.2);
}
.hero-title .accent{color:var(--astra-accent-light)}
.hero-subtitle{
    font-size:1.05rem;
    color:rgba(255,255,255,.88);
    margin-bottom:30px;
    line-height:1.6;
}
.hero-cta-row{display:flex;flex-wrap:wrap;gap:14px}
.hero-cta{
    display:inline-flex;align-items:center;
    background:var(--astra-accent);
    color:#fff;
    padding:14px 32px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    box-shadow:0 8px 28px rgba(255,107,53,.4);
    transition:var(--astra-transition);
}
.hero-cta:hover{
    background:var(--astra-accent-dark);
    color:#fff;
    transform:translateY(-3px);
    box-shadow:0 12px 32px rgba(255,107,53,.5);
}
.hero-cta-secondary{
    display:inline-flex;align-items:center;
    color:#fff;
    padding:14px 28px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    border:2px solid rgba(255,255,255,.4);
    transition:var(--astra-transition);
}
.hero-cta-secondary:hover{
    background:#fff;color:var(--astra-primary);
    border-color:#fff;
}

/* ----- Hero image (right column, 100% visible) ----- */
.hero-img-wrap{
    position:relative;
    border-radius:var(--astra-radius-lg);
    overflow:hidden;
    box-shadow:0 24px 60px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.08);
    aspect-ratio:5/4;
    background:rgba(0,0,0,.15);
}
.hero-img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform 6s ease-out;
}
.carousel-item.active .hero-img{transform:scale(1.05)}

.hero-img-badge{
    position:absolute;
    bottom:18px;left:18px;
    background:rgba(20,34,43,.92);
    backdrop-filter:blur(8px);
    color:#fff;
    padding:12px 18px;
    border-radius:12px;
    display:flex;align-items:center;gap:12px;
    border:1px solid rgba(255,255,255,.1);
    box-shadow:0 8px 22px rgba(0,0,0,.25);
}
.hero-img-badge i{
    font-size:1.6rem;
    color:var(--astra-accent);
    line-height:1;
}
.hero-img-badge strong{
    display:block;
    font-family:var(--astra-font-display);
    font-size:.9rem;
    color:#fff;
    line-height:1.2;
}
.hero-img-badge span{
    display:block;
    font-size:.74rem;
    color:rgba(255,255,255,.7);
    text-transform:uppercase;
    letter-spacing:1px;
    margin-top:2px;
}

/* ----- Carousel controls ----- */
.hero-indicators{
    position:absolute;
    bottom:24px;
    left:50%;
    transform:translateX(-50%);
    margin:0;
    z-index:5;
}
.hero-indicators button{
    width:36px;height:4px;
    background:rgba(255,255,255,.35);
    border:none;
    border-radius:2px;
    opacity:1;
    transition:all .3s ease;
}
.hero-indicators button.active{
    background:var(--astra-accent);
    width:50px;
}

.hero-control{
    width:48px;height:48px;
    top:50%;transform:translateY(-50%);
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    opacity:0;
    transition:opacity .3s ease,background .3s ease;
    margin:0 20px;
    z-index:5;
}
.hero-banner:hover .hero-control{opacity:1}
.hero-control:hover{background:var(--astra-accent);border-color:var(--astra-accent)}
.hero-control i{
    color:#fff;font-size:1.4rem;line-height:1;
    display:flex;align-items:center;justify-content:center;
}
.carousel-control-prev-icon,
.carousel-control-next-icon{display:none}

/* ----- Stats strip ----- */
.hero-stats{
    position:relative;z-index:2;
    display:flex;gap:48px;
    padding:28px 0 36px;
    border-top:1px solid rgba(255,255,255,.18);
    flex-wrap:wrap;
}
.hero-stat .num{
    font-family:var(--astra-font-display);
    font-size:2.4rem;color:#fff;font-weight:700;line-height:1;
}
.hero-stat .label{
    color:rgba(255,255,255,.7);
    font-size:.85rem;text-transform:uppercase;letter-spacing:1.5px;
    margin-top:6px;
}

/* ========== INNER PAGE BANNER ========== */
.inner-page-banner{
    background:linear-gradient(135deg,var(--astra-primary-dark),var(--astra-primary));
    color:#fff;
    padding:80px 0 70px;
    position:relative;
    overflow:hidden;
    text-align:center;
}
.inner-page-banner::before{
    content:'';position:absolute;inset:0;
    background-image:radial-gradient(circle at 50% 0%,rgba(255,107,53,.18) 0%,transparent 60%);
}
.inner-page-banner h1{
    color:#fff;
    font-size:2.8rem;
    position:relative;
    margin-bottom:8px;
}
.inner-page-banner .breadcrumb-line{
    position:relative;
    color:rgba(255,255,255,.78);
}
.inner-page-banner .breadcrumb-line a{color:var(--astra-accent-light)}

/* ========== SECTION HEADINGS ========== */
.section-heading{
    text-align:center;
    margin-bottom:48px;
}
.section-heading .eyebrow{
    display:inline-block;
    color:var(--astra-accent);
    font-family:var(--astra-font-display);
    font-weight:600;
    letter-spacing:3px;
    text-transform:uppercase;
    font-size:.78rem;
    margin-bottom:10px;
}
.section-heading h2{
    font-size:2.4rem;
    margin-bottom:14px;
    position:relative;
}
.section-heading .lead{
    color:var(--astra-muted);
    font-size:1.05rem;
    max-width:680px;
    margin:0 auto;
}
.section-heading .divider{
    width:60px;height:3px;
    background:var(--astra-accent);
    margin:18px auto 0;
    border-radius:3px;
}
.section-heading.left{text-align:left}
.section-heading.left .divider{margin-left:0}

/* ========== PRODUCT GRID ========== */
.section-products{
    padding:90px 0;
    background:linear-gradient(180deg,#fff 0%,var(--astra-light) 100%);
}
.product-card{
    background:#fff;
    border-radius:var(--astra-radius-lg);
    overflow:hidden;
    box-shadow:var(--astra-shadow-sm);
    transition:var(--astra-transition);
    height:100%;
    display:block;
    position:relative;
}
.product-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--astra-shadow-lg);
}
.product-card .product-img{
    position:relative;
    overflow:hidden;
    aspect-ratio:4/3;
    background:var(--astra-light);
}
.product-card .product-img img{
    width:100%;height:100%;
    object-fit:cover;
    transition:transform .6s cubic-bezier(.2,.8,.2,1);
}
.product-card:hover .product-img img{transform:scale(1.08)}
.product-card .product-img::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(180deg,transparent 50%,rgba(20,34,43,.55) 100%);
}
.product-card .product-body{
    padding:22px 24px;
    display:flex;align-items:center;justify-content:space-between;
    gap:12px;
}
.product-card .product-title{
    font-family:var(--astra-font-display);
    font-size:1.05rem;
    font-weight:600;
    color:var(--astra-dark);
    margin:0;
    text-transform:uppercase;
    letter-spacing:.4px;
    line-height:1.3;
}
.product-card .arrow-btn{
    width:38px;height:38px;
    background:var(--astra-accent);
    border-radius:8px;
    color:#fff;
    display:inline-flex;align-items:center;justify-content:center;
    flex-shrink:0;
    transition:var(--astra-transition);
}
.product-card:hover .arrow-btn{
    background:var(--astra-primary);
    transform:translateX(4px);
}

.view-all-wrap{text-align:center;margin-top:48px}
.view-all-btn{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--astra-accent);
    color:#fff;
    padding:14px 36px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:600;
    letter-spacing:1px;
    box-shadow:0 8px 24px rgba(255,107,53,.32);
}
.view-all-btn:hover{
    background:var(--astra-accent-dark);
    color:#fff;
    transform:translateY(-2px);
}

/* ========== ABOUT / SPLIT SECTION ========== */
.section-about-split{
    padding:0;
    position:relative;
}
.about-split-row{display:flex;flex-wrap:wrap;min-height:540px}
.about-split-img{
    flex:1 1 50%;
    background:url('/images/banner2.jpg') center/cover no-repeat;
    min-height:400px;
    position:relative;
}
.about-split-img::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(30,74,92,.25),transparent);
}
.about-split-content{
    flex:1 1 50%;
    background:var(--astra-primary);
    color:#fff;
    padding:72px 60px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    position:relative;
}
.about-split-content::before{
    content:'';position:absolute;
    top:0;left:-30px;height:100%;width:60px;
    background:var(--astra-primary);
    transform:skewX(-6deg);
}
.about-split-content h2{
    color:#fff;
    font-size:2.2rem;
    margin-bottom:8px;
    position:relative;
}
.about-split-content .accent-line{
    width:50px;height:3px;
    background:var(--astra-accent);
    margin:18px 0 24px;
    position:relative;
}
.about-split-content p{
    color:rgba(255,255,255,.88);
    margin-bottom:14px;
    position:relative;
    font-size:.97rem;
    line-height:1.7;
}
.about-split-content .btn-light-outline{
    display:inline-block;
    background:transparent;
    color:#fff;border:2px solid #fff;
    padding:12px 28px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:600;letter-spacing:1px;
    margin-top:18px;
    position:relative;
    align-self:flex-start;
}
.about-split-content .btn-light-outline:hover{
    background:var(--astra-accent);
    border-color:var(--astra-accent);
    color:#fff;
}

/* ========== SERVICE / FEATURE GRID ========== */
.section-features{
    padding:90px 0;
    background:#fff;
}
.feature-item{
    text-align:center;
    padding:32px 22px;
    background:#fff;
    border-radius:var(--astra-radius-lg);
    transition:var(--astra-transition);
    height:100%;
    border:1px solid var(--astra-border);
    position:relative;
    overflow:hidden;
}
.feature-item::before{
    content:'';position:absolute;
    top:0;left:0;right:0;height:3px;
    background:var(--astra-accent);
    transform:scaleX(0);transform-origin:left;
    transition:transform .35s ease;
}
.feature-item:hover{
    transform:translateY(-6px);
    box-shadow:var(--astra-shadow-md);
    border-color:transparent;
}
.feature-item:hover::before{transform:scaleX(1)}
.feature-icon{
    width:74px;height:74px;
    background:linear-gradient(135deg,var(--astra-primary-light),var(--astra-primary));
    border-radius:50%;
    display:inline-flex;
    align-items:center;justify-content:center;
    color:#fff;
    font-size:1.8rem;
    margin-bottom:20px;
    box-shadow:0 8px 20px rgba(44,99,119,.25);
}
.feature-item h3{
    font-size:1.05rem;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:10px;
}
.feature-item p{
    color:var(--astra-muted);
    font-size:.9rem;
    margin:0;
}

/* ========== WHY CHOOSE US ========== */
.section-why{
    padding:90px 0;
    background:var(--astra-light);
    position:relative;
}
.why-card{
    background:#fff;
    padding:32px 28px;
    border-radius:var(--astra-radius-lg);
    height:100%;
    border-left:4px solid var(--astra-accent);
    transition:var(--astra-transition);
    box-shadow:var(--astra-shadow-sm);
}
.why-card:hover{
    transform:translateX(4px);
    box-shadow:var(--astra-shadow-md);
}
.why-card .num{
    font-family:var(--astra-font-display);
    font-size:2.5rem;
    font-weight:700;
    color:var(--astra-primary);
    line-height:1;
    opacity:.5;
}
.why-card h3{
    font-size:1.15rem;
    margin:8px 0 10px;
    color:var(--astra-dark);
}
.why-card p{color:var(--astra-muted);margin:0;font-size:.93rem;line-height:1.6}

/* ========== STATS / COUNTERS ========== */
.section-stats{
    padding:70px 0;
    background:linear-gradient(135deg,var(--astra-primary-dark),var(--astra-primary));
    color:#fff;
    position:relative;
    overflow:hidden;
}
.section-stats::before{
    content:'';position:absolute;inset:0;
    background-image:
        radial-gradient(circle at 10% 20%,rgba(255,107,53,.12) 0%,transparent 40%),
        radial-gradient(circle at 90% 80%,rgba(255,255,255,.06) 0%,transparent 50%);
}
.stat-item{
    text-align:center;
    color:#fff;
    position:relative;z-index:2;
}
.stat-item .stat-num{
    font-family:var(--astra-font-display);
    font-size:3rem;
    font-weight:700;
    color:var(--astra-accent-light);
    line-height:1;
}
.stat-item .stat-num small{font-size:1.6rem;color:#fff}
.stat-item .stat-label{
    font-size:.95rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-top:8px;
    color:rgba(255,255,255,.85);
}

/* ========== INDUSTRIES ========== */
.section-industries{
    padding:90px 0;
    background:#fff;
}
.industry-chip{
    display:flex;align-items:center;gap:14px;
    background:var(--astra-light);
    padding:18px 22px;
    border-radius:var(--astra-radius);
    transition:var(--astra-transition);
    height:100%;
    border:1px solid transparent;
}
.industry-chip:hover{
    background:#fff;
    border-color:var(--astra-primary);
    transform:translateY(-3px);
    box-shadow:var(--astra-shadow-sm);
}
.industry-chip .ic{
    width:46px;height:46px;flex-shrink:0;
    background:var(--astra-primary);
    color:#fff;border-radius:10px;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1.2rem;
}
.industry-chip .name{
    font-family:var(--astra-font-display);
    font-weight:500;
    color:var(--astra-dark);
    font-size:.95rem;
    text-transform:uppercase;
    letter-spacing:.3px;
}

/* ========== TESTIMONIAL ========== */
.section-testimonial{
    padding:90px 0;
    background:var(--astra-light);
}
.testimonial-card{
    background:#fff;
    padding:38px 32px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    height:100%;
    position:relative;
}
.testimonial-card .quote{
    color:var(--astra-accent);
    font-size:2.6rem;
    line-height:1;
    margin-bottom:12px;
    opacity:.8;
}
.testimonial-card p{
    color:var(--astra-text);
    font-style:italic;
    margin-bottom:22px;
    font-size:.97rem;
    line-height:1.7;
}
.testimonial-author{
    display:flex;align-items:center;gap:14px;
    padding-top:18px;
    border-top:1px solid var(--astra-border);
}
.testimonial-author .avatar{
    width:48px;height:48px;border-radius:50%;
    background:linear-gradient(135deg,var(--astra-primary),var(--astra-accent));
    color:#fff;
    display:inline-flex;align-items:center;justify-content:center;
    font-family:var(--astra-font-display);font-weight:700;font-size:1.1rem;
}
.testimonial-author .info strong{
    display:block;
    color:var(--astra-dark);
    font-family:var(--astra-font-display);
}
.testimonial-author .info span{
    color:var(--astra-muted);
    font-size:.85rem;
}

/* ========== FAQ ========== */
.section-faq{padding:90px 0;background:#fff}
.faq-accordion .accordion-item{
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius);
    margin-bottom:14px;
    overflow:hidden;
    background:#fff;
}
.faq-accordion .accordion-button{
    font-family:var(--astra-font-display);
    font-weight:600;
    color:var(--astra-dark);
    background:#fff;
    padding:20px 24px;
    font-size:1.02rem;
    box-shadow:none;
}
.faq-accordion .accordion-button:not(.collapsed){
    background:var(--astra-light);
    color:var(--astra-primary);
}
.faq-accordion .accordion-button:focus{box-shadow:none;border-color:var(--astra-primary)}
.faq-accordion .accordion-body{
    padding:8px 24px 22px;
    color:var(--astra-muted);
    line-height:1.75;
}

/* ========== CTA STRIP ========== */
.section-cta-strip{
    padding:60px 0;
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    color:#fff;
    position:relative;
    overflow:hidden;
}
.section-cta-strip::before{
    content:'';position:absolute;
    top:-50%;right:-10%;width:50%;height:200%;
    background:rgba(255,255,255,.06);
    transform:rotate(15deg);
}
.section-cta-strip h2{color:#fff;margin-bottom:8px}
.section-cta-strip p{color:rgba(255,255,255,.92);margin:0}
.section-cta-strip .btn-cta{
    background:#fff;
    color:var(--astra-accent);
    padding:14px 32px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    display:inline-block;
}
.section-cta-strip .btn-cta:hover{
    background:var(--astra-dark);color:#fff;
    transform:translateY(-2px);
}

/* ========== CONTACT FORM ========== */
.contact-form-section{padding:90px 0;background:var(--astra-light)}
.contact-info-box{
    background:linear-gradient(135deg,var(--astra-primary-dark),var(--astra-primary));
    color:#fff;
    padding:42px 36px;
    border-radius:var(--astra-radius-lg);
    height:100%;
    position:relative;
    overflow:hidden;
}
.contact-info-box::after{
    content:'';position:absolute;
    bottom:-60px;right:-60px;
    width:200px;height:200px;
    background:rgba(255,107,53,.12);
    border-radius:50%;
}
.contact-info-box h3{color:#fff;margin-bottom:22px;position:relative}
.contact-info-item{
    display:flex;gap:14px;
    margin-bottom:20px;
    position:relative;
}
.contact-info-item .ci-icon{
    width:42px;height:42px;flex-shrink:0;
    background:rgba(255,255,255,.12);
    border-radius:10px;
    display:inline-flex;align-items:center;justify-content:center;
    color:var(--astra-accent-light);
    font-size:1.1rem;
}
.contact-info-item .ci-text strong{
    display:block;color:#fff;
    font-family:var(--astra-font-display);
    margin-bottom:2px;
}
.contact-info-item .ci-text span,
.contact-info-item .ci-text a{
    color:rgba(255,255,255,.82);
    font-size:.92rem;
}
.contact-info-item .ci-text a:hover{color:var(--astra-accent-light)}

.contact-form-box{
    background:#fff;
    padding:42px 38px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    height:100%;
}
.contact-form-box h3{margin-bottom:8px}
.contact-form-box .form-lead{
    color:var(--astra-muted);
    margin-bottom:26px;
    font-size:.95rem;
}
.contact-form-box label,
.contact-form-box .form-group p{
    font-family:var(--astra-font-display);
    font-weight:500;
    color:var(--astra-dark);
    margin-bottom:6px;
    font-size:.9rem;
    text-transform:uppercase;
    letter-spacing:.5px;
}
.contact-form-box .form-control{
    border:1px solid var(--astra-border);
    border-radius:8px;
    padding:11px 14px;
    font-size:.95rem;
    transition:var(--astra-transition);
}
.contact-form-box .form-control:focus{
    border-color:var(--astra-primary);
    box-shadow:0 0 0 3px rgba(44,99,119,.12);
    outline:none;
}
.contact-form-box textarea.form-control{min-height:110px;resize:vertical}
.captcha{
    display:flex;align-items:center;gap:10px;
    background:var(--astra-light);
    padding:8px 12px;
    border-radius:8px;
    margin-bottom:12px;
}
.captcha .ctext{
    font-family:var(--astra-font-display);
    font-size:1.1rem;font-weight:600;
    color:var(--astra-primary);
}
.captcha input{
    border:1px solid var(--astra-border);
    padding:8px 12px;border-radius:6px;
    width:120px;
}
.submit-btn{
    background:var(--astra-accent);
    color:#fff;
    border:none;
    padding:13px 34px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:600;
    letter-spacing:1px;
    cursor:pointer;
    box-shadow:0 6px 18px rgba(255,107,53,.32);
    transition:var(--astra-transition);
}
.submit-btn:hover{
    background:var(--astra-accent-dark);
    transform:translateY(-2px);
}

/* ========== LEFT PANEL / SIDEBAR ========== */
.sidebar{
    background:#fff;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    overflow:hidden;
    position:sticky;top:120px;
}
.sidebar-header{
    background:linear-gradient(135deg,var(--astra-primary-dark),var(--astra-primary));
    color:#fff;
    padding:18px 22px;
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:600;
    letter-spacing:1px;
    display:flex;align-items:center;justify-content:space-between;
}
.sidebar #cssmenu{padding:0}
.sidebar #cssmenu ul{list-style:none;padding:0;margin:0}
.sidebar #cssmenu > ul > li{
    border-bottom:1px solid var(--astra-border);
    position:relative;
}
.sidebar #cssmenu > ul > li:last-child{border-bottom:none}
.sidebar #cssmenu > ul > li > a{
    display:block;
    padding:14px 22px;
    color:var(--astra-dark);
    font-family:var(--astra-font-display);
    font-weight:500;
    font-size:.92rem;
    transition:var(--astra-transition);
    text-transform:uppercase;
    letter-spacing:.4px;
}
.sidebar #cssmenu > ul > li:hover > a,
.sidebar #cssmenu > ul > li.active > a{
    background:var(--astra-light);
    color:var(--astra-primary);
    padding-left:28px;
}
.sidebar #cssmenu > ul > li.expandable > .plus{
    position:absolute;
    top:14px;right:18px;
    width:20px;height:20px;
    background:var(--astra-light);
    border-radius:4px;
    cursor:pointer;
    z-index:5;
}
.sidebar #cssmenu > ul > li.expandable > .plus::before,
.sidebar #cssmenu > ul > li.expandable > .plus::after{
    content:'';position:absolute;
    background:var(--astra-primary);
    transition:var(--astra-transition);
}
.sidebar #cssmenu > ul > li.expandable > .plus::before{
    top:50%;left:4px;right:4px;height:2px;transform:translateY(-50%);
}
.sidebar #cssmenu > ul > li.expandable > .plus::after{
    left:50%;top:4px;bottom:4px;width:2px;transform:translateX(-50%);
}
.sidebar #cssmenu > ul > li.active.expandable > .plus::after{transform:translateX(-50%) scaleY(0)}
.sidebar #cssmenu ul ul{
    background:#fafcfd;
    display:none;
    border-top:1px solid var(--astra-border);
}
.sidebar #cssmenu li.active > ul{display:block}
.sidebar #cssmenu ul ul li a{
    display:block;
    padding:10px 22px 10px 36px;
    font-size:.88rem;
    color:var(--astra-muted);
    border-bottom:1px dashed var(--astra-border);
}
.sidebar #cssmenu ul ul li a:hover{
    color:var(--astra-accent);
    background:#fff;
}

/* ========== ABOUT PAGE ========== */
.about-page-section{padding:60px 0 90px;background:var(--astra-light)}
.about-page-content{
    background:#fff;padding:48px 44px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
}
.about-page-content h3{
    color:var(--astra-primary);
    border-bottom:2px solid var(--astra-border);
    padding-bottom:10px;
    margin-top:32px;
    margin-bottom:16px;
    font-size:1.5rem;
}
.about-page-content h3:first-child{margin-top:0}
.about-page-content p{color:var(--astra-text);line-height:1.8;margin-bottom:14px}

.country-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:10px;
    margin-top:18px;
}
.country-grid .country-tag{
    background:var(--astra-light);
    padding:8px 14px;
    border-radius:6px;
    font-size:.85rem;
    color:var(--astra-text);
    border-left:3px solid var(--astra-primary);
}

/* ========== PRODUCTS LISTING ========== */
.product-listing-section{padding:50px 0 80px;background:var(--astra-light)}
.products-header{
    background:#fff;padding:24px 28px;
    border-radius:var(--astra-radius);
    margin-bottom:24px;box-shadow:var(--astra-shadow-sm);
}
.products-header h1{
    margin:0;color:var(--astra-primary);font-size:1.7rem;
}
.product-list-card{
    background:#fff;padding:24px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    margin-bottom:20px;
    transition:var(--astra-transition);
}
.product-list-card:hover{box-shadow:var(--astra-shadow-md)}
.product-list-card img{
    border-radius:var(--astra-radius);
    border:1px solid var(--astra-border);
}
.product-list-card h2{font-size:1.25rem;margin-bottom:8px}
.product-list-card h2 a{color:var(--astra-dark)}
.product-list-card h2 a:hover{color:var(--astra-accent)}
.product-list-card p{color:var(--astra-muted);font-size:.93rem;margin-bottom:10px}
.product-list-card .product-code{
    display:inline-block;
    background:var(--astra-light);
    padding:5px 12px;
    border-radius:6px;
    font-size:.84rem;color:var(--astra-muted);
    margin-bottom:14px;
}
.product-list-card .product-code strong{color:var(--astra-primary)}
.btngroup .btn{
    padding:9px 18px;
    border-radius:8px;
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    font-weight:500;
    letter-spacing:.5px;
    font-size:.86rem;
    border:none;
}
.btngroup .btn-primary{background:var(--astra-primary)}
.btngroup .btn-primary:hover{background:var(--astra-primary-dark)}
.btngroup .btn-danger{background:var(--astra-accent)}
.btngroup .btn-danger:hover{background:var(--astra-accent-dark)}

/* sub-categories grid */
.subcat-grid .subcat-card{
    background:#fff;
    border-radius:var(--astra-radius-lg);
    overflow:hidden;
    box-shadow:var(--astra-shadow-sm);
    transition:var(--astra-transition);
    text-align:center;
    height:100%;
}
.subcat-grid .subcat-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--astra-shadow-md);
}
.subcat-grid .subcat-card img{
    width:100%;aspect-ratio:4/3;object-fit:cover;
}
.subcat-grid .product_name{padding:16px 14px}
.subcat-grid .product_name a{
    color:var(--astra-dark);
    font-family:var(--astra-font-display);
    font-weight:600;
    text-transform:uppercase;
    font-size:.92rem;
}
.subcat-grid .product_name a:hover{color:var(--astra-accent)}

/* ========== PRODUCT DETAIL ========== */
.product-detail-section{padding:50px 0 80px;background:var(--astra-light)}
.product-detail-card{
    background:#fff;padding:36px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
}
.product-detail-card .img-thumbnail{
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius);
    padding:8px;
}
.dtsubhead{
    display:block;
    font-size:1.5rem;
    font-family:var(--astra-font-display);
    color:var(--astra-primary);
    font-weight:600;
    margin-bottom:8px;
}
.des_text .hightlights{
    background:var(--astra-light);
    color:var(--astra-primary);
    padding:8px 14px;
    border-radius:6px;
    font-weight:600;
    display:inline-block;
    margin-bottom:10px;
    font-family:var(--astra-font-display);
}
.btns ul{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.btns ul li{display:inline-block}
.btns .btn{
    padding:10px 20px;
    border-radius:8px;
    font-family:var(--astra-font-display);
    font-size:.86rem;
    text-transform:uppercase;
    letter-spacing:.5px;
    font-weight:500;
    border:none;
}
.btns .addbtn{background:var(--astra-primary);color:#fff}
.btns .addbtn:hover{background:var(--astra-primary-dark);color:#fff}
.btns .quick_view{background:var(--astra-accent);color:#fff}
.btns .quick_view:hover{background:var(--astra-accent-dark);color:#fff}
.btns .btn-warning{background:#f0a440;color:#fff}
.btns .prints{background:var(--astra-light);color:var(--astra-dark);border:1px solid var(--astra-border)}
.btns .prints:hover{background:var(--astra-primary);color:#fff}

/* ========== BREADCRUMBS ========== */
.bread-crumbs{
    background:var(--astra-light);
    padding:12px 20px;
    border-radius:8px;
    font-size:.88rem;
    color:var(--astra-muted);
    margin-bottom:20px;
}
.bread-crumbs a{color:var(--astra-primary);font-weight:500}
.bread-crumbs a:hover{color:var(--astra-accent)}

/* ========== FOOTER ========== */
.astra-footer{
    background:var(--astra-dark);
    color:#a4b0b8;
    padding-top:70px;
    margin-top:0;
}
.footer-top-curve{
    background:var(--astra-primary);
    padding:48px 0;
    color:#fff;
    margin-bottom:0;
}
.footer-top-curve h2{color:#fff;margin-bottom:6px}
.footer-top-curve p{color:rgba(255,255,255,.85);margin:0}

.astra-footer .footer-col h4{
    color:#fff;font-size:1.05rem;
    margin-bottom:22px;
    position:relative;padding-bottom:10px;
    text-transform:uppercase;
    letter-spacing:1px;
}
.astra-footer .footer-col h4::after{
    content:'';position:absolute;
    bottom:0;left:0;width:36px;height:2px;
    background:var(--astra-accent);
}
.astra-footer .footer-col ul{list-style:none;padding:0;margin:0}
.astra-footer .footer-col ul li{margin-bottom:9px}
.astra-footer .footer-col ul li a{
    color:#a4b0b8;
    transition:var(--astra-transition);
    font-size:.92rem;
}
.astra-footer .footer-col ul li a:hover{
    color:var(--astra-accent);
    padding-left:6px;
}

.footer-contact-item{
    display:flex;gap:12px;
    margin-bottom:14px;
}
.footer-contact-item .fci-icon{
    width:34px;height:34px;flex-shrink:0;
    background:rgba(255,255,255,.08);
    border-radius:8px;
    display:inline-flex;align-items:center;justify-content:center;
    color:var(--astra-accent-light);
}
.footer-contact-item span,
.footer-contact-item a{
    color:#a4b0b8;font-size:.92rem;
    line-height:1.6;
    word-break:break-word;
}
.footer-contact-item a:hover{color:var(--astra-accent)}

.social-icons{display:flex;gap:10px;margin-top:12px}
.social-icons a{
    width:38px;height:38px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#fff;
    display:inline-flex;align-items:center;justify-content:center;
    transition:var(--astra-transition);
}
.social-icons a:hover{
    background:var(--astra-accent);
    color:#fff;
    transform:translateY(-3px);
}

/* ========== FOOTER BOTTOM (blends with main dark footer) ========== */
.footer-bottom{
    background:transparent;
    padding:0 0 30px;
    color:#8a96a0;
    font-size:.82rem;
    margin-top:50px;
    border-top:1px solid rgba(255,255,255,.08);
    padding-top:40px;
}

/* ----- Global supply regions (the long copyright + Africa paragraph) ----- */
.global-regions{
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.09);
    border-radius:var(--astra-radius-lg);
    padding:26px 30px 28px;
    margin-bottom:32px;
    position:relative;
}
.global-regions::before{
    content:'';
    position:absolute;left:30px;top:-1px;height:3px;width:64px;
    background:var(--astra-accent);
    border-radius:0 0 3px 3px;
}
.global-regions .regions-label{
    display:inline-flex;
    align-items:center;gap:8px;
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:.75rem;
    font-weight:600;
    color:var(--astra-accent-light);
    margin-bottom:14px;
    font-family:var(--astra-font-display);
}
.global-regions .regions-label i{font-size:1rem}
.global-regions .copyright{
    margin:0;
    line-height:1.85;
    color:#a4b0b8;
    font-size:.84rem;
}
.global-regions .copyright .brand-name{
    color:#fff;font-weight:600;
}

/* ----- SEO chip grid heading ----- */
.seo-links-heading{
    display:flex;align-items:center;gap:14px;
    margin-bottom:18px;
    padding:0 4px;
}
.seo-links-heading::before,
.seo-links-heading::after{
    content:'';flex:1;
    height:1px;background:rgba(255,255,255,.1);
}
.seo-links-heading span{
    text-transform:uppercase;
    letter-spacing:2.5px;
    font-size:.72rem;
    font-weight:600;
    color:var(--astra-accent-light);
    font-family:var(--astra-font-display);
    white-space:nowrap;
}

/* ----- Country chip grid ----- */
.seo-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    padding:0;
    margin:0;
    line-height:normal;
    font-size:initial;
}
.seo-links a{
    display:inline-flex;
    align-items:center;
    padding:7px 14px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    border-radius:30px;
    color:#a4b0b8;
    font-size:.76rem;
    font-weight:400;
    transition:all .25s ease;
    text-decoration:none;
    line-height:1.3;
}
.seo-links a:hover{
    background:var(--astra-accent);
    border-color:var(--astra-accent);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 14px rgba(255,107,53,.3);
}

/* Final copyright strip */
.final-copyright{
    text-align:center;
    margin-top:30px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.06);
    color:#6b7680;
    font-size:.8rem;
}
.final-copyright a{color:var(--astra-accent-light)}
.final-copyright a:hover{color:var(--astra-accent)}

@media(max-width:767px){
    .global-regions{padding:20px 18px}
    .seo-links a{font-size:.72rem;padding:6px 12px}
    .seo-links-heading span{font-size:.65rem;letter-spacing:1.5px}
}

/* ========== FLOATING SUPPORT WIDGET ========== */
.support{
    position:fixed;
    bottom:24px;right:24px;
    width:60px;height:60px;
    border-radius:50%;
    background:var(--astra-accent);
    color:#fff;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;
    box-shadow:0 8px 24px rgba(255,107,53,.42);
    z-index:1000;
    transition:var(--astra-transition);
}
.support:hover{transform:scale(1.08)}
.support img{max-width:34px;max-height:34px}
.inner-fabs{
    position:fixed;
    bottom:96px;right:24px;
    display:flex;flex-direction:column;gap:12px;
    z-index:1000;
    opacity:0;visibility:hidden;
    transform:translateY(10px);
    transition:var(--astra-transition);
}
.inner-fabs.show{
    opacity:1;visibility:visible;
    transform:translateY(0);
}
.inner-fabs a{
    width:50px;height:50px;
    border-radius:50%;
    background:#fff;
    color:var(--astra-primary);
    display:flex;align-items:center;justify-content:center;
    box-shadow:var(--astra-shadow-md);
    transition:var(--astra-transition);
    font-size:1.2rem;
}
.inner-fabs a:hover{
    background:var(--astra-primary);
    color:#fff;
}

/* ========== UTILITIES ========== */
.text-orange{color:var(--astra-accent) !important}
.bg-orange{background:var(--astra-accent) !important;color:#fff}
.text-primary-astra{color:var(--astra-primary) !important}
.bg-primary-astra{background:var(--astra-primary) !important;color:#fff}

/* ========== ANIMATIONS ========== */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.fade-up{animation:fadeUp .8s ease both}
.fade-up.d1{animation-delay:.1s}
.fade-up.d2{animation-delay:.2s}
.fade-up.d3{animation-delay:.3s}
.fade-up.d4{animation-delay:.4s}

/* ========== RESPONSIVE ========== */
@media (max-width:1199.98px){
    .hero-title{font-size:2.6rem}
    .about-split-content{padding:60px 40px}
}
@media (max-width:991.98px){
    body{padding-top:78px}
    .astra-topbar{display:none}
    .astra-navbar{top:0}
    .astra-navbar .navbar-collapse{
        background:#fff;
        padding:18px;
        box-shadow:var(--astra-shadow-md);
        margin-top:10px;
        border-radius:var(--astra-radius);
    }
    .astra-navbar .nav-link{padding:.5rem 0 !important;text-align:left}
    .astra-navbar .nav-link::after{display:none}
    .hero-slide{padding:48px 0 60px}
    .hero-text-col{padding:0 0 30px 0;text-align:center}
    .hero-img-col{padding:0}
    .hero-content{max-width:none;margin:0 auto}
    .hero-cta-row{justify-content:center}
    .hero-title{font-size:2.2rem}
    .hero-img-wrap{aspect-ratio:16/10;max-width:560px;margin:0 auto}
    .hero-stats{gap:24px;justify-content:center;text-align:center}
    .hero-control{display:none}
    .about-split-row{flex-direction:column}
    .about-split-img,.about-split-content{flex:1 1 100%}
    .about-split-content{padding:50px 30px}
    .about-split-content::before{display:none}
    .section-products,.section-features,.section-why,.section-industries,.section-testimonial,.section-faq,.contact-form-section,.about-page-section,.product-listing-section,.product-detail-section{padding:60px 0}
    h1{font-size:2rem}
    h2{font-size:1.7rem}
    .section-heading h2{font-size:1.85rem}
    .sidebar{position:static;margin-top:30px}
}
@media (max-width:575.98px){
    .hero-title{font-size:1.8rem}
    .hero-subtitle{font-size:.95rem}
    .hero-cta,.hero-cta-secondary{padding:12px 20px;font-size:.82rem;flex:1 1 100%;justify-content:center;text-align:center}
    .hero-stat .num{font-size:1.9rem}
    .hero-stats{gap:18px}
    .hero-img-badge{padding:9px 13px;bottom:12px;left:12px}
    .hero-img-badge i{font-size:1.3rem}
    .hero-img-badge strong{font-size:.78rem}
    .hero-img-badge span{font-size:.66rem}
    .stat-item .stat-num{font-size:2.2rem}
    .about-page-content,.contact-form-box,.contact-info-box,.product-detail-card{padding:26px 22px}
    .country-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
    .product-card .product-body{padding:16px 18px}
    .product-card .product-title{font-size:.92rem}
    .support{width:52px;height:52px;bottom:18px;right:18px}
    .inner-fabs{bottom:78px;right:18px}
}

/* ========== SIDEBAR CTA ========== */
.sidebar-cta{
    margin-top:22px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    color:#fff;
    padding:24px 22px;
    border-radius:var(--astra-radius-lg);
    text-align:center;
    box-shadow:var(--astra-shadow-sm);
}
.sidebar-cta-eyebrow{
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-size:.72rem;
    font-weight:600;
    color:var(--astra-accent-light);
    margin-bottom:8px;
}
.sidebar-cta h4{
    color:#fff;
    font-family:var(--astra-font-display);
    font-size:1.05rem;
    font-weight:600;
    margin:0 0 10px;
    line-height:1.3;
}
.sidebar-cta p{
    font-size:.84rem;
    line-height:1.55;
    color:rgba(255,255,255,.85);
    margin-bottom:14px;
}

/* ========== UTILITY BUTTONS ========== */
.btn-accent{
    background:var(--astra-accent);
    color:#fff;
    border:none;
    padding:10px 22px;
    border-radius:8px;
    font-family:var(--astra-font-display);
    text-transform:uppercase;
    letter-spacing:.5px;
    font-weight:500;
    transition:var(--astra-transition);
}
.btn-accent:hover{
    background:var(--astra-accent-dark);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 8px 18px rgba(255,107,53,.35);
}

/* ========== RELATED PRODUCTS (product-detail page) ========== */
.related-products-block{
    margin-top:50px;
    padding-top:40px;
    border-top:1px solid var(--astra-border);
}
.related-products-block .section-eyebrow{
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:.78rem;
    color:var(--astra-accent);
    font-weight:600;
    margin-bottom:8px;
}
.related-products-block h2{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.9rem;
    font-weight:600;
    margin-bottom:6px;
}
.related-products-block .lead{
    color:var(--astra-muted);
    font-size:.95rem;
    margin-bottom:30px;
}
.related-card{
    background:#fff;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    overflow:hidden;
    transition:var(--astra-transition);
    height:100%;
    display:flex;
    flex-direction:column;
}
.related-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--astra-shadow-md);
}
.related-card .related-img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    background:var(--astra-light);
}
.related-card .related-body{
    padding:16px 16px 18px;
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}
.related-card .related-name a{
    color:var(--astra-dark);
    font-family:var(--astra-font-display);
    font-weight:600;
    text-transform:uppercase;
    font-size:.9rem;
    line-height:1.35;
    display:block;
    margin-bottom:10px;
}
.related-card .related-name a:hover{color:var(--astra-accent)}
.related-card .related-link{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:var(--astra-accent);
    font-size:.82rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
}
.related-card .related-link:hover{color:var(--astra-accent-dark)}
.related-card .related-link i{transition:transform .2s ease}
.related-card:hover .related-link i{transform:translateX(4px)}

/* ========== PRODUCT META STRIP ========== */
.product-meta-strip{
    display:flex;flex-wrap:wrap;gap:12px;
    margin:14px 0 18px;
}
.product-meta-strip .meta-chip{
    background:var(--astra-light);
    color:var(--astra-primary);
    padding:6px 14px;
    border-radius:30px;
    font-size:.82rem;
    font-weight:500;
    border:1px solid var(--astra-border);
}
.product-meta-strip .meta-chip i{margin-right:6px;color:var(--astra-accent)}

/* product feature bullets */
.product-features-list{
    list-style:none;padding:0;margin:18px 0;
}
.product-features-list li{
    padding:8px 0 8px 28px;
    position:relative;
    color:var(--astra-dark);
    font-size:.94rem;
    border-bottom:1px dashed var(--astra-border);
}
.product-features-list li:last-child{border-bottom:none}
.product-features-list li::before{
    content:"\F26B";
    font-family:"bootstrap-icons";
    position:absolute;left:0;top:8px;
    color:var(--astra-accent);
    font-weight:700;
}

/* SEO block at bottom of product page */
.product-seo-block{
    margin-top:60px;
    background:#fff;
    padding:36px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
}
.product-seo-block h3{
    font-family:var(--astra-font-display);
    color:var(--astra-primary);
    font-weight:600;
    margin-bottom:14px;
    font-size:1.4rem;
}
.product-seo-block p{
    color:var(--astra-muted);
    line-height:1.7;
    font-size:.94rem;
}

@media(max-width:767px){
    .product-detail-card{padding:22px 18px}
    .product-seo-block{padding:24px 20px}
}

/* ========== SEO KEYWORD CARDS SECTION ========== */
.seo-cards-section{
    padding:80px 0;
    background:linear-gradient(180deg,var(--astra-light) 0%,#fff 100%);
}
.seo-cards-section .section-heading{margin-bottom:40px}

.seo-cards-subhead{
    font-family:var(--astra-font-display);
    font-size:1.2rem;
    text-transform:uppercase;
    letter-spacing:1.5px;
    color:var(--astra-primary);
    font-weight:600;
    margin:0 0 22px;
    padding-left:14px;
    border-left:4px solid var(--astra-accent);
    display:flex;align-items:center;gap:12px;
}
.seo-cards-subhead i{color:var(--astra-accent);font-size:1.3rem}

/* ----- TIER 1: Equipment category cards (anchor cards) ----- */
.seo-card{
    display:block;
    background:#fff;
    padding:24px 22px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    border:1px solid var(--astra-border);
    height:100%;
    transition:var(--astra-transition);
    text-decoration:none;
    color:inherit;
    position:relative;
    overflow:hidden;
}
.seo-card::before{
    content:'';
    position:absolute;
    top:0;left:0;width:0;height:3px;
    background:var(--astra-accent);
    transition:width .4s ease;
}
.seo-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--astra-shadow-md);
    border-color:var(--astra-accent-light);
    color:inherit;
}
.seo-card:hover::before{width:100%}
.seo-card-icon{
    width:48px;height:48px;
    border-radius:12px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:1.4rem;
    margin-bottom:14px;
    transition:var(--astra-transition);
}
.seo-card:hover .seo-card-icon{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    transform:rotate(-6deg) scale(1.08);
}
.seo-card h4{
    font-family:var(--astra-font-display);
    font-size:1.02rem;
    font-weight:600;
    color:var(--astra-dark);
    margin:0 0 10px;
    text-transform:uppercase;
    letter-spacing:.5px;
    line-height:1.3;
}
.seo-card p{
    color:var(--astra-muted);
    font-size:.88rem;
    line-height:1.55;
    margin:0 0 12px;
}
.seo-card-keywords{
    display:block;
    font-size:.74rem;
    color:var(--astra-primary);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    padding-top:10px;
    border-top:1px dashed var(--astra-border);
    line-height:1.6;
}

/* ----- TIER 2: Audience cards (lighter style) ----- */
.seo-card-secondary{
    background:#fff;
    border-left:4px solid var(--astra-primary);
    padding:20px 22px;
}
.seo-card-secondary::before{display:none}
.seo-card-secondary h4{
    text-transform:none;
    letter-spacing:0;
    font-size:1rem;
    color:var(--astra-primary);
    margin-bottom:8px;
}
.seo-card-secondary h4 i{color:var(--astra-accent)}
.seo-card-secondary:hover{
    border-left-color:var(--astra-accent);
    transform:translateX(4px);
}

/* ----- TIER 3: Geographic region cards ----- */
.seo-card-region{
    background:linear-gradient(135deg,#fff 0%,var(--astra-light) 100%);
    text-align:center;
    padding:24px 18px;
    border:1px solid var(--astra-border);
}
.seo-card-region::before{display:none}
.seo-card-region h4{
    font-family:var(--astra-font-display);
    font-size:1.1rem;
    color:var(--astra-dark);
    text-transform:none;
    letter-spacing:0;
    margin-bottom:10px;
}
.seo-card-region p{font-size:.84rem;margin:0}
.seo-card-region:hover{
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    border-color:var(--astra-primary);
}
.seo-card-region:hover h4{color:#fff}
.seo-card-region:hover p{color:rgba(255,255,255,.9)}

/* ----- TIER 4: Why-us value cards (numbered) ----- */
.seo-card-value{
    background:#fff;
    padding:24px 22px 22px;
    position:relative;
}
.seo-card-value::before{display:none}
.seo-card-value .seo-card-num{
    font-family:var(--astra-font-display);
    font-size:2.4rem;
    font-weight:700;
    color:var(--astra-accent);
    line-height:1;
    margin-bottom:10px;
    opacity:.85;
}
.seo-card-value h4{
    text-transform:none;
    letter-spacing:0;
    font-size:1.05rem;
    margin-bottom:8px;
}
.seo-card-value:hover{
    background:var(--astra-dark);
    border-color:var(--astra-dark);
}
.seo-card-value:hover .seo-card-num{color:var(--astra-accent-light);opacity:1}
.seo-card-value:hover h4{color:#fff}
.seo-card-value:hover p{color:rgba(255,255,255,.8)}

/* ----- Bottom CTA strip ----- */
.seo-cards-cta{
    margin-top:50px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    padding:36px 40px;
    border-radius:var(--astra-radius-lg);
    color:#fff;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    box-shadow:0 18px 40px rgba(44,99,119,.25);
    position:relative;
    overflow:hidden;
}
.seo-cards-cta::before{
    content:'';
    position:absolute;
    top:-50%;right:-10%;
    width:300px;height:300px;
    background:radial-gradient(circle,rgba(255,107,53,.25) 0%,transparent 70%);
    pointer-events:none;
}
.seo-cards-cta h3{
    color:#fff;
    font-family:var(--astra-font-display);
    font-size:1.4rem;
    font-weight:600;
    margin:0 0 6px;
}
.seo-cards-cta p{
    color:rgba(255,255,255,.85);
    margin:0;
    font-size:.94rem;
}
.seo-cards-cta-buttons{
    display:flex;flex-wrap:wrap;gap:12px;
    position:relative;z-index:2;
}
.seo-cards-cta .hero-cta-secondary{border-color:rgba(255,255,255,.5)}
.seo-cards-cta .hero-cta-secondary:hover{background:#fff;color:var(--astra-primary)}

/* ----- Responsive ----- */
@media(max-width:767px){
    .seo-cards-section{padding:54px 0}
    .seo-cards-subhead{font-size:1rem}
    .seo-card{padding:20px 18px}
    .seo-card h4{font-size:.95rem}
    .seo-cards-cta{padding:26px 24px;text-align:center;justify-content:center}
    .seo-cards-cta h3{font-size:1.15rem}
    .seo-cards-cta-buttons{justify-content:center;width:100%}
    .seo-cards-cta-buttons a{flex:1 1 auto;text-align:center;justify-content:center}
}

/* ========== TIER 1 — DIFFERENT ICON BACKGROUNDS PER CARD ========== */
/* Override the default gradient with category-specific colors */
.seo-card-icon-c1{ background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%); }   /* Electrical — amber */
.seo-card-icon-c2{ background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%); }   /* Electronics — blue */
.seo-card-icon-c3{ background:linear-gradient(135deg,#64748b 0%,#334155 100%); }   /* Mechanical — steel */
.seo-card-icon-c4{ background:linear-gradient(135deg,#c2410c 0%,#7c2d12 100%); }   /* Automotive — rust */
.seo-card-icon-c5{ background:linear-gradient(135deg,#06b6d4 0%,#0e7490 100%); }   /* Pneumatic/Hydraulic — cyan */
.seo-card-icon-c6{ background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%); }   /* Mechatronics/Robotics — purple */
.seo-card-icon-c7{ background:linear-gradient(135deg,#a16207 0%,#713f12 100%); }   /* Civil — earthy brown */
.seo-card-icon-c8{ background:linear-gradient(135deg,#10b981 0%,#047857 100%); }   /* CNC/Workshop — green */

/* Hover state still shifts to brand accent for consistency */
.seo-card:hover .seo-card-icon-c1,
.seo-card:hover .seo-card-icon-c2,
.seo-card:hover .seo-card-icon-c3,
.seo-card:hover .seo-card-icon-c4,
.seo-card:hover .seo-card-icon-c5,
.seo-card:hover .seo-card-icon-c6,
.seo-card:hover .seo-card-icon-c7,
.seo-card:hover .seo-card-icon-c8{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
}

/* ========== CONTACT PAGE (REDESIGNED) ========== */
.contact-page-section{
    padding:60px 0 50px;
    background:linear-gradient(180deg,var(--astra-light) 0%,#fff 100%);
}

/* Right-side intro card (replaces the form) */
.contact-intro-card{
    background:#fff;
    padding:36px 40px;
    border-radius:var(--astra-radius-lg);
    box-shadow:var(--astra-shadow-sm);
    height:100%;
    border:1px solid var(--astra-border);
}
.contact-intro-eyebrow{
    display:inline-block;
    background:rgba(255,107,53,.12);
    color:var(--astra-accent-dark);
    padding:5px 14px;
    border-radius:30px;
    font-size:.7rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:600;
    margin-bottom:14px;
    border:1px solid rgba(255,107,53,.25);
}
.contact-intro-card h2{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.8rem;
    font-weight:600;
    margin-bottom:12px;
    line-height:1.25;
}
.contact-intro-card .lead{
    color:var(--astra-muted);
    font-size:.96rem;
    line-height:1.65;
    margin-bottom:26px;
}

/* Quick-action tiles inside the intro card */
.contact-quick-actions{
    display:flex;
    flex-direction:column;
    gap:12px;
}
.quick-action{
    display:flex;
    align-items:center;
    gap:16px;
    padding:14px 18px;
    background:var(--astra-light);
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius);
    text-decoration:none;
    color:inherit;
    transition:var(--astra-transition);
    position:relative;
}
.quick-action:hover{
    background:#fff;
    border-color:var(--astra-accent);
    transform:translateX(4px);
    box-shadow:var(--astra-shadow-md);
    color:inherit;
}
.quick-action .qa-icon{
    width:42px;height:42px;
    border-radius:10px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:1.15rem;
    flex-shrink:0;
}
.quick-action-primary .qa-icon{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
}
.quick-action .qa-body{flex:1;min-width:0}
.quick-action .qa-body strong{
    display:block;
    font-family:var(--astra-font-display);
    font-size:.96rem;
    color:var(--astra-dark);
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:2px;
}
.quick-action .qa-body span{
    display:block;
    font-size:.85rem;
    color:var(--astra-muted);
    line-height:1.4;
    word-break:break-word;
}
.quick-action .qa-arrow{
    color:var(--astra-muted);
    transition:var(--astra-transition);
    flex-shrink:0;
}
.quick-action:hover .qa-arrow{
    color:var(--astra-accent);
    transform:translateX(4px);
}

/* Services section (reuses .seo-card from index but with own padding) */
.contact-services-section{
    padding:60px 0 80px;
    background:#fff;
}
.contact-services-section .section-heading{margin-bottom:40px}

/* Suppliers worldwide section (moved from footer) */
.contact-suppliers-section{
    padding:60px 0 80px;
    background:var(--astra-light);
}
.contact-suppliers-section .section-heading{margin-bottom:36px}

/* Light-theme chip grid (was dark in footer) */
.suppliers-chip-grid{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:center;
}
.suppliers-chip-grid a{
    display:inline-flex;
    align-items:center;
    padding:8px 16px;
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:30px;
    color:var(--astra-dark);
    font-size:.8rem;
    font-weight:500;
    transition:all .25s ease;
    text-decoration:none;
    line-height:1.3;
}
.suppliers-chip-grid a:hover{
    background:var(--astra-accent);
    border-color:var(--astra-accent);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 14px rgba(255,107,53,.3);
}

@media(max-width:767px){
    .contact-page-section,.contact-services-section,.contact-suppliers-section{padding:48px 0}
    .contact-intro-card{padding:26px 22px}
    .contact-intro-card h2{font-size:1.4rem}
    .quick-action{padding:12px 14px;gap:12px}
    .quick-action .qa-icon{width:36px;height:36px;font-size:1rem}
    .quick-action .qa-body strong{font-size:.88rem}
    .quick-action .qa-body span{font-size:.78rem}
    .suppliers-chip-grid a{font-size:.74rem;padding:6px 12px}
}

/* ========== ABOUT PAGE — NEW SEO SECTIONS ========== */
/* Process numbered cards */
.about-process-card{
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:24px 22px 22px;
    height:100%;
    position:relative;
    transition:var(--astra-transition);
    overflow:hidden;
}
.about-process-card::before{
    content:'';
    position:absolute;
    top:0;left:0;
    width:4px;height:100%;
    background:var(--astra-accent);
    transition:width .3s ease;
}
.about-process-card:hover{
    transform:translateY(-4px);
    box-shadow:var(--astra-shadow-md);
}
.about-process-card:hover::before{width:6px}
.about-process-card .proc-num{
    display:inline-block;
    font-family:var(--astra-font-display);
    font-size:2.2rem;
    font-weight:700;
    color:var(--astra-accent);
    line-height:1;
    margin-bottom:8px;
    opacity:.9;
}
.about-process-card h5{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin:6px 0 10px;
}
.about-process-card p{
    color:var(--astra-muted);
    font-size:.88rem;
    line-height:1.6;
    margin:0;
}

/* Industry cards with icon */
.about-industry-card{
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:22px 20px;
    height:100%;
    transition:var(--astra-transition);
    text-align:center;
}
.about-industry-card:hover{
    transform:translateY(-4px);
    border-color:var(--astra-accent-light);
    box-shadow:var(--astra-shadow-md);
}
.about-industry-card .ai-icon{
    width:54px;height:54px;
    border-radius:14px;
    color:#fff;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1.5rem;
    margin-bottom:14px;
    transition:var(--astra-transition);
}
.about-industry-card:hover .ai-icon{
    transform:rotate(-6deg) scale(1.08);
}
.about-industry-card h5{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:.98rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:8px;
}
.about-industry-card p{
    color:var(--astra-muted);
    font-size:.86rem;
    line-height:1.55;
    margin:0;
}

/* Certification badge cards */
.about-cert-card{
    background:linear-gradient(135deg,var(--astra-light) 0%,#fff 100%);
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:22px 22px 20px;
    height:100%;
    transition:var(--astra-transition);
    display:flex;
    flex-direction:column;
    gap:14px;
}
.about-cert-card:hover{
    background:linear-gradient(135deg,#fff 0%,var(--astra-light) 100%);
    transform:translateY(-3px);
    box-shadow:var(--astra-shadow-md);
    border-color:var(--astra-primary);
}
.about-cert-card .cc-row{
    display:flex;
    align-items:center;
    gap:14px;
    padding-bottom:12px;
    border-bottom:1px solid var(--astra-border);
}
.about-cert-card .cc-badge{
    width:46px;height:46px;
    border-radius:12px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:1.3rem;
    flex-shrink:0;
    transition:var(--astra-transition);
}
.about-cert-card:hover .cc-badge{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    transform:scale(1.08) rotate(-4deg);
}
.about-cert-card h5{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1rem;
    font-weight:600;
    margin:0;
    line-height:1.3;
    flex:1;
    text-transform:uppercase;
    letter-spacing:.5px;
}
.about-cert-card p{
    color:var(--astra-muted);
    font-size:.88rem;
    line-height:1.6;
    margin:0;
}

@media(max-width:767px){
    .about-process-card,.about-industry-card{padding:20px 18px}
    .about-process-card .proc-num{font-size:1.8rem}
    .about-cert-card{padding:18px 16px;gap:12px}
    .about-cert-card .cc-badge{width:40px;height:40px;font-size:1.1rem}
}

/* ========== ABOUT PAGE — DIVISION BLOCKS (White Base Design) ========== */
.division-block{
    margin-bottom:48px;
    border-radius:var(--astra-radius-lg);
    overflow:hidden;
    background:#fff;
    box-shadow:0 4px 24px rgba(20,34,43,.06);
    border:1px solid var(--astra-border);
    position:relative;
    transition:var(--astra-transition);
}
.division-block:hover{
    box-shadow:0 8px 36px rgba(20,34,43,.09);
    transform:translateY(-2px);
}

/* Thin colored accent stripe at top of each block */
.division-block::before{
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:4px;
    z-index:2;
}

/* White header band with colored icon + dark readable text */
.division-header{
    padding:36px 40px 30px;
    display:flex;
    align-items:center;
    gap:24px;
    background:#fff;
    position:relative;
    border-bottom:1px solid var(--astra-border);
}

/* Soft watermark of the icon in the background — adds depth without darkening */
.division-header::after{
    content:'';
    position:absolute;
    top:50%;right:-30px;
    transform:translateY(-50%);
    width:260px;height:260px;
    border-radius:50%;
    opacity:.04;
    z-index:0;
    pointer-events:none;
}

/* Colored icon tile */
.division-icon{
    width:78px;height:78px;
    border-radius:18px;
    display:flex;align-items:center;justify-content:center;
    font-size:2.2rem;
    color:#fff;
    flex-shrink:0;
    position:relative;
    z-index:1;
    box-shadow:0 8px 22px rgba(0,0,0,.12);
}
.division-icon::after{
    content:'';
    position:absolute;
    inset:-6px;
    border-radius:22px;
    border:1px dashed rgba(0,0,0,.08);
    pointer-events:none;
}

.division-meta{flex:1;position:relative;z-index:1;min-width:0}
.division-label{
    display:inline-flex;
    align-items:center;gap:8px;
    font-family:var(--astra-font-display);
    font-size:.72rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    margin-bottom:8px;
    font-weight:700;
    padding:4px 10px;
    border-radius:30px;
}
.division-label::before{
    content:'';
    width:6px;height:6px;
    border-radius:50%;
    display:inline-block;
}
.division-meta h3{
    color:var(--astra-dark);
    margin:0 0 8px;
    font-size:1.7rem;
    font-weight:700;
    font-family:var(--astra-font-display);
    line-height:1.2;
    border:none;
    padding:0;
}
.division-meta h3::after{display:none}
.division-tagline{
    margin:0;
    color:var(--astra-muted);
    font-size:.96rem;
    line-height:1.55;
    font-weight:400;
}
.division-body{
    padding:32px 40px 36px;
    background:#fff;
    position:relative;
}
.division-body > p{
    color:var(--astra-text);
    line-height:1.75;
    margin-bottom:14px;
    font-size:.95rem;
}

/* ----- Division-specific accent colors (top stripe + icon + label) ----- */
/* Engineering — Blue */
.division-engineering::before{
    background:linear-gradient(90deg,#1e40af 0%,#3b82f6 100%);
}
.division-engineering .division-icon{
    background:linear-gradient(135deg,#1e40af 0%,#3b82f6 100%);
}
.division-engineering .division-label{
    background:rgba(59,130,246,.1);
    color:#1e40af;
}
.division-engineering .division-label::before{background:#3b82f6}
.division-engineering .division-header::after{
    background:radial-gradient(circle,#3b82f6 0%,transparent 70%);
}

/* Educational — Green */
.division-educational::before{
    background:linear-gradient(90deg,#047857 0%,#10b981 100%);
}
.division-educational .division-icon{
    background:linear-gradient(135deg,#047857 0%,#10b981 100%);
}
.division-educational .division-label{
    background:rgba(16,185,129,.1);
    color:#047857;
}
.division-educational .division-label::before{background:#10b981}
.division-educational .division-header::after{
    background:radial-gradient(circle,#10b981 0%,transparent 70%);
}

/* Medical — Brand Teal */
.division-medical::before{
    background:linear-gradient(90deg,#1e4a5c 0%,#2c6377 100%);
}
.division-medical .division-icon{
    background:linear-gradient(135deg,#1e4a5c 0%,#2c6377 100%);
}
.division-medical .division-label{
    background:rgba(44,99,119,.1);
    color:#1e4a5c;
}
.division-medical .division-label::before{background:#2c6377}
.division-medical .division-header::after{
    background:radial-gradient(circle,#2c6377 0%,transparent 70%);
}

/* ========== PRODUCT PILLS (Redesigned chip cards) ========== */
.product-pill{
    display:flex;
    align-items:center;
    gap:14px;
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:12px;
    padding:14px 16px;
    height:100%;
    transition:all .3s cubic-bezier(.4,0,.2,1);
    position:relative;
    overflow:hidden;
    cursor:default;
}
.product-pill::before{
    content:'';
    position:absolute;
    left:0;top:0;height:100%;width:0;
    background:currentColor;
    opacity:.06;
    transition:width .35s cubic-bezier(.4,0,.2,1);
    z-index:0;
}
.product-pill:hover{
    transform:translateX(4px) translateY(-2px);
    box-shadow:0 8px 20px rgba(20,34,43,.08);
    border-color:transparent;
}
.product-pill:hover::before{width:100%}

.product-pill .pp-icon{
    width:40px;height:40px;
    border-radius:10px;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1.1rem;
    flex-shrink:0;
    color:#fff;
    position:relative;z-index:1;
    transition:all .3s ease;
    box-shadow:0 4px 10px rgba(0,0,0,.08);
}
.product-pill .pp-name{
    font-family:var(--astra-font-display);
    font-weight:500;
    color:var(--astra-dark);
    font-size:.88rem;
    text-transform:uppercase;
    letter-spacing:.4px;
    line-height:1.3;
    position:relative;z-index:1;
    flex:1;
}
.product-pill:hover .pp-icon{
    transform:scale(1.1) rotate(-5deg);
    box-shadow:0 6px 14px rgba(0,0,0,.18);
}

/* Engineering pills — blue tones */
.product-pill-engineering{color:#1d4ed8}
.product-pill-engineering .pp-icon{
    background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);
}
.product-pill-engineering:hover{color:#1e40af}

/* Educational pills — green tones */
.product-pill-educational{color:#047857}
.product-pill-educational .pp-icon{
    background:linear-gradient(135deg,#10b981 0%,#047857 100%);
}
.product-pill-educational:hover{color:#065f46}

/* Medical pills — brand teal tones */
.product-pill-medical{color:var(--astra-primary)}
.product-pill-medical .pp-icon{
    background:linear-gradient(135deg,#3a7891 0%,#1e4a5c 100%);
}
.product-pill-medical:hover{color:var(--astra-primary-dark)}

/* Mobile */
@media(max-width:767px){
    .division-block{margin-bottom:40px}
    .division-header{padding:22px 22px;gap:16px;flex-wrap:wrap}
    .division-icon{width:54px;height:54px;font-size:1.6rem;border-radius:14px}
    .division-meta h3{font-size:1.3rem}
    .division-tagline{font-size:.85rem}
    .division-body{padding:24px 20px}
    .product-pill{padding:12px 14px;gap:12px}
    .product-pill .pp-icon{width:36px;height:36px;font-size:1rem}
    .product-pill .pp-name{font-size:.78rem}
}

/* ========== PRODUCT DETAIL — CTA BANNER ========== */
.product-cta-banner{
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    border-radius:var(--astra-radius-lg);
    padding:36px 40px;
    margin:32px 0 28px;
    color:#fff;
    display:flex;
    align-items:center;
    gap:32px;
    position:relative;
    overflow:hidden;
    box-shadow:0 10px 32px rgba(44,99,119,.22);
}
.product-cta-banner::before{
    content:'';
    position:absolute;
    top:-60%;right:-8%;
    width:380px;height:380px;
    background:radial-gradient(circle,rgba(255,107,53,.18) 0%,transparent 70%);
    pointer-events:none;
}
.product-cta-banner::after{
    content:'';
    position:absolute;
    bottom:-50%;left:-5%;
    width:280px;height:280px;
    background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);
    pointer-events:none;
}
.pcta-content{
    flex:1;
    position:relative;
    z-index:1;
    min-width:0;
}
.pcta-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:rgba(255,107,53,.2);
    color:#fff;
    padding:5px 14px;
    border-radius:30px;
    font-size:.72rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:12px;
    border:1px solid rgba(255,107,53,.35);
}
.product-cta-banner h3{
    font-family:var(--astra-font-display);
    color:#fff;
    font-size:1.6rem;
    font-weight:700;
    line-height:1.25;
    margin:0 0 10px;
}
.product-cta-banner p{
    color:rgba(255,255,255,.88);
    font-size:.96rem;
    line-height:1.6;
    margin:0;
    max-width:620px;
}
.product-cta-banner p strong{color:#fff}

.pcta-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    flex-shrink:0;
    position:relative;
    z-index:1;
    min-width:240px;
}
.pcta-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 22px;
    border-radius:10px;
    font-family:var(--astra-font-display);
    font-size:.88rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.6px;
    text-decoration:none;
    transition:var(--astra-transition);
    border:2px solid transparent;
    white-space:nowrap;
}
.pcta-btn-primary{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    color:#fff;
    box-shadow:0 6px 16px rgba(255,107,53,.35);
}
.pcta-btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 22px rgba(255,107,53,.5);
    color:#fff;
}
.pcta-btn-whatsapp{
    background:#25D366;
    color:#fff;
    box-shadow:0 6px 16px rgba(37,211,102,.32);
}
.pcta-btn-whatsapp:hover{
    background:#1ebd5a;
    transform:translateY(-2px);
    box-shadow:0 10px 22px rgba(37,211,102,.45);
    color:#fff;
}
.pcta-btn-call{
    background:transparent;
    color:#fff;
    border-color:rgba(255,255,255,.5);
}
.pcta-btn-call:hover{
    background:#fff;
    color:var(--astra-primary-dark);
    border-color:#fff;
    transform:translateY(-2px);
}

/* ========== PRODUCT DETAIL — FAQ BLOCK ========== */
.product-faq-block{
    background:#fff;
    border-radius:var(--astra-radius-lg);
    padding:40px 44px;
    margin:28px 0 32px;
    border:1px solid var(--astra-border);
    box-shadow:var(--astra-shadow-sm);
}
.product-faq-block .section-eyebrow{
    color:var(--astra-accent);
    font-size:.72rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:8px;
}
.product-faq-block h2{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.7rem;
    font-weight:700;
    margin:0 0 10px;
    line-height:1.25;
}
.product-faq-block .lead{
    color:var(--astra-muted);
    font-size:.95rem;
    line-height:1.6;
    margin-bottom:24px;
}

/* Bootstrap accordion overrides */
.product-faq-block .accordion{
    --bs-accordion-border-color: var(--astra-border);
    --bs-accordion-border-radius: 10px;
    --bs-accordion-inner-border-radius: 10px;
    --bs-accordion-btn-padding-y: 18px;
    --bs-accordion-btn-padding-x: 22px;
    --bs-accordion-body-padding-y: 18px;
    --bs-accordion-body-padding-x: 22px;
}
.product-faq-block .accordion-item{
    border:1px solid var(--astra-border);
    border-radius:10px !important;
    margin-bottom:10px;
    overflow:hidden;
}
.product-faq-block .accordion-item:last-child{margin-bottom:0}
.product-faq-block .accordion-button{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-weight:600;
    font-size:.98rem;
    background:#fff;
    box-shadow:none;
    line-height:1.45;
}
.product-faq-block .accordion-button:not(.collapsed){
    color:var(--astra-primary);
    background:linear-gradient(135deg,rgba(44,99,119,.04) 0%,rgba(255,107,53,.04) 100%);
    box-shadow:inset 0 -1px 0 var(--astra-border);
}
.product-faq-block .accordion-button:focus{
    box-shadow:none;
    border-color:var(--astra-accent);
}
.product-faq-block .accordion-button::after{
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff6b35'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.product-faq-block .accordion-body{
    color:var(--astra-text);
    font-size:.92rem;
    line-height:1.7;
    background:#fff;
}
.product-faq-block .accordion-body a{
    color:var(--astra-accent);
    font-weight:600;
    text-decoration:none;
}
.product-faq-block .accordion-body a:hover{
    color:var(--astra-accent-dark);
    text-decoration:underline;
}

/* Responsive — stack CTA and tighten FAQ on mobile */
@media(max-width:767px){
    .product-cta-banner{
        flex-direction:column;
        align-items:stretch;
        padding:28px 24px;
        gap:22px;
    }
    .product-cta-banner h3{font-size:1.3rem}
    .pcta-actions{min-width:0;width:100%}
    .pcta-btn{padding:13px 18px;font-size:.82rem;width:100%}

    .product-faq-block{padding:28px 22px}
    .product-faq-block h2{font-size:1.35rem}
    .product-faq-block .accordion-button{font-size:.92rem;padding:16px 18px}
    .product-faq-block .accordion-body{padding:16px 18px;font-size:.88rem}
}

/* ========== PRODUCT DETAIL — CTA BANNER ========== */
.product-cta-banner{
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    border-radius:var(--astra-radius-lg);
    padding:36px 40px;
    margin:32px 0;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px;
    position:relative;
    overflow:hidden;
    box-shadow:0 8px 28px rgba(44,99,119,.25);
}
.product-cta-banner::before{
    content:'';
    position:absolute;
    top:-80px;right:-80px;
    width:280px;height:280px;
    background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);
    pointer-events:none;
}
.pcta-content{flex:1;min-width:0;position:relative;z-index:1}
.pcta-eyebrow{
    display:inline-flex;
    align-items:center;gap:6px;
    background:rgba(255,255,255,.18);
    padding:5px 14px;
    border-radius:30px;
    font-size:.72rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:600;
    color:#fff;
    margin-bottom:14px;
    border:1px solid rgba(255,255,255,.25);
}
.product-cta-banner h3{
    font-family:var(--astra-font-display);
    color:#fff;
    font-size:1.8rem;
    font-weight:600;
    margin:0 0 10px;
    line-height:1.2;
    border:none;padding:0;
}
.product-cta-banner h3::after{display:none}
.product-cta-banner p{
    color:rgba(255,255,255,.92);
    font-size:.95rem;
    line-height:1.55;
    margin:0;
    max-width:560px;
}
.product-cta-banner p strong{color:#fff}
.pcta-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    flex-shrink:0;
    position:relative;
    z-index:1;
    min-width:240px;
}
.pcta-btn{
    display:inline-flex;
    align-items:center;justify-content:center;
    padding:12px 22px;
    border-radius:var(--astra-radius);
    font-family:var(--astra-font-display);
    font-size:.85rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.6px;
    text-decoration:none;
    transition:var(--astra-transition);
    border:1px solid transparent;
    white-space:nowrap;
}
.pcta-btn-primary{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    color:#fff;
    box-shadow:0 4px 14px rgba(255,107,53,.35);
}
.pcta-btn-primary:hover{
    background:linear-gradient(135deg,var(--astra-accent-dark) 0%,var(--astra-accent) 100%);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 18px rgba(255,107,53,.45);
}
.pcta-btn-whatsapp{
    background:#25D366;
    color:#fff;
}
.pcta-btn-whatsapp:hover{
    background:#1ebe57;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 6px 14px rgba(37,211,102,.4);
}
.pcta-btn-call{
    background:transparent;
    color:#fff;
    border-color:rgba(255,255,255,.45);
}
.pcta-btn-call:hover{
    background:#fff;
    color:var(--astra-primary);
    border-color:#fff;
    transform:translateY(-2px);
}

/* ========== PRODUCT DETAIL — FAQ BLOCK ========== */
.product-faq-block{
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:40px 44px;
    margin:32px 0;
    box-shadow:var(--astra-shadow-sm);
}
.product-faq-block .section-eyebrow{
    color:var(--astra-accent);
    font-family:var(--astra-font-display);
    font-size:.72rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    font-weight:600;
    margin-bottom:8px;
}
.product-faq-block h2{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.7rem;
    font-weight:600;
    margin:0 0 10px;
    line-height:1.25;
    border:none;padding:0;
}
.product-faq-block h2::after{display:none}
.product-faq-block .lead{
    color:var(--astra-muted);
    font-size:.96rem;
    line-height:1.6;
    margin-bottom:28px;
}
.product-faq-block .accordion-item{
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius) !important;
    margin-bottom:10px;
    overflow:hidden;
}
.product-faq-block .accordion-item:last-child{margin-bottom:0}
.product-faq-block .accordion-button{
    background:#fff;
    color:var(--astra-dark);
    font-family:var(--astra-font-display);
    font-size:1rem;
    font-weight:600;
    padding:18px 22px;
    border:none;
    box-shadow:none;
    line-height:1.4;
}
.product-faq-block .accordion-button:not(.collapsed){
    background:rgba(255,107,53,.05);
    color:var(--astra-accent-dark);
    box-shadow:none;
}
.product-faq-block .accordion-button:focus{
    box-shadow:none;
    border-color:var(--astra-accent);
}
.product-faq-block .accordion-button::after{
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff6b35'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.product-faq-block .accordion-body{
    padding:18px 22px 22px;
    color:var(--astra-text);
    font-size:.92rem;
    line-height:1.7;
    border-top:1px solid var(--astra-border);
}
.product-faq-block .accordion-body strong{color:var(--astra-dark)}
.product-faq-block .accordion-body a{
    color:var(--astra-accent);
    font-weight:600;
    text-decoration:none;
}
.product-faq-block .accordion-body a:hover{
    color:var(--astra-accent-dark);
    text-decoration:underline;
}

@media(max-width:767px){
    .product-cta-banner{
        flex-direction:column;
        align-items:stretch;
        padding:28px 24px;
        gap:20px;
    }
    .product-cta-banner h3{font-size:1.4rem}
    .pcta-actions{min-width:0;width:100%}
    .pcta-btn{width:100%}
    .product-faq-block{padding:28px 22px}
    .product-faq-block h2{font-size:1.4rem}
    .product-faq-block .accordion-button{padding:14px 16px;font-size:.92rem}
    .product-faq-block .accordion-body{padding:14px 16px 18px;font-size:.88rem}
}

/* ========== PRODUCT DETAIL — KEY HIGHLIGHTS LIST (right column) ========== */
.product-highlights-list{
    list-style:none;
    padding:0;
    margin:0 0 22px;
}
.product-highlights-list li{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:8px 0;
    color:var(--astra-text);
    font-size:.92rem;
    line-height:1.5;
    border-bottom:1px dashed var(--astra-border);
}
.product-highlights-list li:last-child{border-bottom:none}
.product-highlights-list li i{
    color:var(--astra-accent);
    font-size:1.05rem;
    flex-shrink:0;
    margin-top:2px;
}

/* ========== PRODUCT DETAIL — FULL-WIDTH SPEC BLOCKS ========== */
.product-spec-block{
    background:#fff;
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:32px 36px;
    margin:24px 0;
    box-shadow:var(--astra-shadow-sm);
    transition:var(--astra-transition);
}
.product-spec-block:hover{
    box-shadow:var(--astra-shadow-md);
}
.spec-block-head{
    display:flex;
    align-items:center;
    gap:18px;
    padding-bottom:20px;
    margin-bottom:24px;
    border-bottom:2px solid var(--astra-border);
}
.spec-icon{
    width:56px;height:56px;
    border-radius:14px;
    background:linear-gradient(135deg,var(--astra-primary) 0%,var(--astra-primary-dark) 100%);
    color:#fff;
    display:inline-flex;
    align-items:center;justify-content:center;
    font-size:1.5rem;
    flex-shrink:0;
    box-shadow:0 6px 18px rgba(44,99,119,.25);
}
.spec-icon-accent{
    background:linear-gradient(135deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    box-shadow:0 6px 18px rgba(255,107,53,.25);
}
.spec-block-head h3{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.5rem;
    font-weight:600;
    margin:0 0 4px;
    line-height:1.25;
    border:none;
    padding:0;
}
.spec-block-head h3::after{display:none}
.spec-subhead{
    color:var(--astra-muted);
    font-size:.9rem;
    line-height:1.5;
    margin:0;
}
.spec-block-body{
    color:var(--astra-text);
    font-size:.95rem;
    line-height:1.75;
}
.spec-block-body p{margin-bottom:14px}
.spec-block-body p:last-child{margin-bottom:0}
.spec-block-body ul,
.spec-block-body ol{
    padding-left:24px;
    margin-bottom:16px;
}
.spec-block-body ul li,
.spec-block-body ol li{
    margin-bottom:6px;
    line-height:1.65;
}
.spec-block-body strong{color:var(--astra-dark);font-weight:600}
.spec-block-body table{
    width:100%;
    border-collapse:collapse;
    margin:16px 0;
    font-size:.92rem;
}
.spec-block-body table th,
.spec-block-body table td{
    padding:10px 14px;
    border:1px solid var(--astra-border);
    text-align:left;
    vertical-align:top;
}
.spec-block-body table th{
    background:var(--astra-light);
    font-family:var(--astra-font-display);
    font-weight:600;
    color:var(--astra-dark);
    text-transform:uppercase;
    font-size:.82rem;
    letter-spacing:.5px;
}
.spec-block-body table tr:nth-child(even) td{background:rgba(246,248,249,.5)}

/* Technical spec block gets a subtle accent stripe at top */
.product-tech-spec{
    position:relative;
}
.product-tech-spec::before{
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:3px;
    background:linear-gradient(90deg,var(--astra-accent) 0%,var(--astra-accent-dark) 100%);
    border-radius:var(--astra-radius-lg) var(--astra-radius-lg) 0 0;
}

@media(max-width:767px){
    .product-spec-block{padding:24px 22px;margin:18px 0}
    .spec-block-head{gap:14px;padding-bottom:16px;margin-bottom:18px}
    .spec-icon{width:44px;height:44px;font-size:1.2rem;border-radius:10px}
    .spec-block-head h3{font-size:1.2rem}
    .spec-subhead{font-size:.82rem}
    .spec-block-body{font-size:.9rem}
    .spec-block-body table{font-size:.82rem}
    .spec-block-body table th,
    .spec-block-body table td{padding:7px 8px}
    .product-highlights-list li{font-size:.88rem;padding:7px 0}
}

/* ========== PRODUCT DETAIL — IMAGE SEO TAGLINE ========== */
.product-image-tagline{
    margin:14px 0 0;
    padding:14px 16px;
    background:var(--astra-light);
    border-left:3px solid var(--astra-accent);
    border-radius:0 var(--astra-radius) var(--astra-radius) 0;
    color:var(--astra-muted);
    font-size:.84rem;
    line-height:1.55;
    font-style:italic;
}
.product-image-tagline i{
    color:var(--astra-accent);
    margin-right:6px;
    font-size:.95rem;
    font-style:normal;
}

/* Tighten meta-strip when it now lives in the right column */
.col-md-7 > .product-meta-strip{
    margin-bottom:18px;
    flex-wrap:wrap;
    gap:8px;
}

/* ========== PRODUCT DETAIL — CATEGORY STRIP ========== */
.product-category-strip{
    margin-top:24px;
    padding:16px 20px;
    background:linear-gradient(135deg,var(--astra-light) 0%,#fff 100%);
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
    transition:var(--astra-transition);
}
.product-category-strip:hover{
    border-color:var(--astra-primary);
    box-shadow:var(--astra-shadow-sm);
}
.pcs-label{
    display:flex;
    flex-direction:column;
    gap:3px;
    min-width:0;
    flex:1;
}
.pcs-eyebrow{
    font-family:var(--astra-font-display);
    font-size:.7rem;
    letter-spacing:2px;
    text-transform:uppercase;
    color:var(--astra-muted);
    font-weight:600;
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.pcs-eyebrow i{
    color:var(--astra-accent);
    font-size:.85rem;
}
.pcs-label strong{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1rem;
    font-weight:600;
    line-height:1.3;
}
.pcs-back-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:9px 18px;
    background:#fff;
    border:1px solid var(--astra-primary);
    color:var(--astra-primary);
    border-radius:30px;
    font-family:var(--astra-font-display);
    font-size:.82rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    text-decoration:none;
    transition:var(--astra-transition);
    white-space:nowrap;
}
.pcs-back-link:hover{
    background:var(--astra-primary);
    color:#fff;
    transform:translateX(-3px);
    box-shadow:0 4px 12px rgba(44,99,119,.25);
}
.pcs-back-link i{
    font-size:1rem;
    transition:var(--astra-transition);
}
.pcs-back-link:hover i{
    transform:translateX(-2px);
}

@media(max-width:575px){
    .product-category-strip{
        flex-direction:column;
        align-items:stretch;
        text-align:center;
    }
    .pcs-back-link{justify-content:center;width:100%}
}

/* ========== PRODUCTS LISTING — STICKY SIDEBAR ========== */
.sidebar-sticky{
    position:sticky;
    top:90px; /* leaves room below sticky header */
    max-height:calc(100vh - 110px);
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:var(--astra-primary) transparent;
}
.sidebar-sticky::-webkit-scrollbar{width:5px}
.sidebar-sticky::-webkit-scrollbar-track{background:transparent}
.sidebar-sticky::-webkit-scrollbar-thumb{
    background:var(--astra-primary);
    border-radius:3px;
}
.sidebar-sticky::-webkit-scrollbar-thumb:hover{background:var(--astra-primary-dark)}

/* On screens below lg, drop the sticky behavior */
@media(max-width:991px){
    .sidebar-sticky{
        position:static;
        max-height:none;
        overflow:visible;
    }
}

/* ========== PRODUCTS LISTING — CATEGORY HERO ========== */
.products-header.category-hero{
    background:linear-gradient(135deg,#fff 0%,var(--astra-light) 100%);
    border:1px solid var(--astra-border);
    border-radius:var(--astra-radius-lg);
    padding:36px 40px;
    margin-bottom:28px;
    position:relative;
    overflow:hidden;
    box-shadow:0 2px 12px rgba(20,34,43,.04);
}
.products-header.category-hero::before{
    content:'';
    position:absolute;
    top:0;left:0;right:0;
    height:4px;
    background:linear-gradient(90deg,var(--astra-primary) 0%,var(--astra-accent) 100%);
}
.products-header.category-hero::after{
    content:'';
    position:absolute;
    top:-80px;right:-80px;
    width:300px;height:300px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(255,107,53,.05) 0%,transparent 70%);
    pointer-events:none;
}

.cat-hero-content{position:relative;z-index:1}

.cat-hero-eyebrow{
    display:inline-flex;
    align-items:center;gap:8px;
    background:rgba(44,99,119,.1);
    color:var(--astra-primary);
    padding:5px 14px;
    border-radius:30px;
    font-family:var(--astra-font-display);
    font-size:.72rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:14px;
    border:1px solid rgba(44,99,119,.2);
}
.cat-hero-eyebrow i{
    color:var(--astra-accent);
    font-size:.85rem;
}

.products-header.category-hero h1,
.products-header.category-hero h2{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:2rem;
    font-weight:700;
    line-height:1.2;
    margin:0 0 14px;
    border:none;
    padding:0;
}
.products-header.category-hero h1::after,
.products-header.category-hero h2::after{display:none}

.cat-hero-desc{
    color:var(--astra-text);
    font-size:.96rem;
    line-height:1.75;
    margin:0 0 20px;
    max-width:880px;
}
.cat-hero-desc strong{color:var(--astra-dark);font-weight:600}

.cat-hero-keywords{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:22px;
}
.cat-keyword{
    display:inline-block;
    background:#fff;
    border:1px solid var(--astra-border);
    color:var(--astra-muted);
    padding:5px 14px;
    border-radius:30px;
    font-size:.78rem;
    font-weight:500;
    transition:var(--astra-transition);
}
.cat-keyword:hover{
    background:var(--astra-primary);
    border-color:var(--astra-primary);
    color:#fff;
}

.cat-hero-stats{
    display:flex;
    gap:24px;
    flex-wrap:wrap;
    padding-top:18px;
    border-top:1px dashed var(--astra-border);
}
.cat-hero-stat{
    display:flex;
    align-items:center;
    gap:12px;
}
.cat-hero-stat i{
    color:var(--astra-accent);
    font-size:1.7rem;
    flex-shrink:0;
}
.cat-hero-stat div{
    display:flex;
    flex-direction:column;
    line-height:1.2;
}
.cat-hero-stat strong{
    font-family:var(--astra-font-display);
    color:var(--astra-dark);
    font-size:1.1rem;
    font-weight:700;
}
.cat-hero-stat span{
    color:var(--astra-muted);
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.5px;
}

@media(max-width:767px){
    .products-header.category-hero{padding:24px 22px}
    .products-header.category-hero h1,
    .products-header.category-hero h2{font-size:1.5rem}
    .cat-hero-desc{font-size:.9rem}
    .cat-hero-stats{gap:16px}
    .cat-hero-stat i{font-size:1.4rem}
    .cat-hero-stat strong{font-size:1rem}
    .cat-hero-stat span{font-size:.72rem}
}

/* ========== PRODUCTS LISTING — SEO TRUST CARD (right column on cards) ========== */
.product-seo-card{
    background:linear-gradient(135deg,var(--astra-light) 0%,#fff 100%);
    border:1px solid var(--astra-border);
    border-left:4px solid var(--astra-primary);
    border-radius:var(--astra-radius);
    padding:14px 16px;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:10px;
}
.product-seo-card .psc-row{
    display:flex;
    align-items:center;
    gap:12px;
    padding:6px 0;
}
.product-seo-card .psc-row + .psc-row{
    border-top:1px dashed var(--astra-border);
    padding-top:14px;
}
.product-seo-card .psc-row i{
    font-size:1.4rem;
    flex-shrink:0;
    width:28px;
    text-align:center;
}
/* First row — brand teal */
.product-seo-card .psc-row:nth-child(1) i{color:var(--astra-primary)}
.product-seo-card .psc-row:nth-child(1) strong{color:var(--astra-primary)}
/* Second row — brand accent (orange) */
.product-seo-card .psc-row:nth-child(2) i{color:var(--astra-accent)}
.product-seo-card .psc-row:nth-child(2) strong{color:var(--astra-accent-dark)}

.product-seo-card .psc-row > div{
    display:flex;
    flex-direction:column;
    line-height:1.2;
    min-width:0;
}
.product-seo-card .psc-row strong{
    font-family:var(--astra-font-display);
    font-size:.85rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.4px;
}
.product-seo-card .psc-row span{
    color:var(--astra-muted);
    font-size:.76rem;
    margin-top:3px;
}
