/* ============================================================
   DBS Engineers — Premium Industrial Master CSS
   Part 1: Base, Reset, Typography, Header, Mobile Nav
   ============================================================ */

/* ─── CSS VARIABLES ─────────────────────────────────────── */
:root {
    --orange:       #ff6b00;
    --orange-dark:  #e05a00;
    --orange-glow:  rgba(255,107,0,0.28);
    --charcoal:     #0b0f1a;
    --charcoal-2:   #131929;
    --charcoal-3:   #1a2235;
    --white:        #ffffff;
    --off-white:    #f5f7fa;
    --slate-100:    #eef0f5;
    --slate-200:    #dde2ed;
    --slate-400:    #8896b0;
    --slate-600:    #4f617a;
    --font-display: 'Sora', sans-serif;
    --font-body:    'Manrope', sans-serif;
    --ease:         cubic-bezier(0.4, 0, 0.2, 1);
    --t3:           0.3s;
    --t5:           0.5s;
    --radius-sm:    8px;
    --radius-md:    16px;
    --radius-lg:    24px;
    --shadow-sm:    0 2px 8px rgba(0,0,0,0.06);
    --shadow-md:    0 8px 32px rgba(0,0,0,0.10);
    --shadow-lg:    0 20px 60px rgba(0,0,0,0.15);
    --shadow-orange:0 8px 30px rgba(255,107,0,0.25);
}

/* ─── RESET ──────────────────────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);background:var(--off-white);color:var(--slate-600);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.nav-open{overflow:hidden}
a{text-decoration:none;color:inherit;transition:color var(--t3) var(--ease)}
ul{list-style:none}
img{max-width:100%;height:auto;display:block}
button{cursor:pointer;font-family:inherit}

/* ─── LAYOUT ─────────────────────────────────────────────── */
.page-container{max-width:1320px;margin:0 auto;padding:0 2rem;width:100%}

/* ─── TYPOGRAPHY ─────────────────────────────────────────── */
.section-label{display:inline-flex;align-items:center;gap:.6rem;color:var(--orange);font-family:var(--font-display);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem}
.section-label::before{content:'';width:24px;height:2px;background:var(--orange);flex-shrink:0}
.section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:var(--charcoal);line-height:1.15;margin-bottom:1.5rem}
.section-title--white{color:var(--white)}
.section-desc{font-size:1.1rem;color:var(--slate-400);max-width:650px;line-height:1.8}
.section-header{margin-bottom:4rem}
.section-header--center{text-align:center}
.section-header--center .section-label{justify-content:center}
.section-header--center .section-desc{margin:0 auto}
.c-orange{color:var(--orange)}

/* Fix Phone Icon Direction */
.fa-phone, .fa-phone-alt { display: inline-block; }

/* ─── BUTTONS ────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.95rem 2.2rem;font-family:var(--font-display);font-weight:700;font-size:.9rem;border-radius:var(--radius-sm);transition:all var(--t3) var(--ease);cursor:pointer;border:none;white-space:nowrap;letter-spacing:.04em}
.btn-orange{background:var(--orange);color:var(--white);box-shadow:var(--shadow-orange)}
.btn-orange:hover{background:var(--orange-dark);transform:translateY(-3px);box-shadow:0 14px 40px rgba(255,107,0,.35);color:var(--white)}
.btn-orange:active{background:var(--orange-dark) !important;transform:translateY(-1px) scale(0.98) !important;box-shadow:0 6px 20px rgba(255,107,0,.25) !important;color:var(--white) !important;}
.btn-ghost-white{background:rgba(255,255,255,.08);color:var(--white);border:1.5px solid rgba(255,255,255,.35);backdrop-filter:blur(5px)}
.btn-ghost-white:hover{background:var(--white);color:var(--charcoal);border-color:var(--white);transform:translateY(-3px)}
.btn-dark-outline{background:transparent;color:var(--charcoal);border:2px solid var(--charcoal)}
.btn-dark-outline:hover{background:var(--charcoal);color:var(--white);transform:translateY(-3px)}
.btn-dark{background:var(--charcoal);color:var(--white)}
.btn-dark:hover{background:#000;color:var(--orange);transform:translateY(-3px)}
.btn-footer-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(5px)}
.btn-footer-outline:hover{background:rgba(255,255,255,.12);transform:translateY(-3px)}
.btn-lg{padding:1.2rem 3rem;font-size:1rem}
.btn-sm{padding:.7rem 1.6rem;font-size:.85rem}

/* ─── SITE HEADER ────────────────────────────────────────── */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    padding: 0.8rem 0;
    transition: padding var(--t3) var(--ease), background var(--t3) var(--ease), box-shadow var(--t3) var(--ease);
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(16px);
    box-shadow: 0 4px 24px rgba(0,0,0,.07);
}
.site-header.scrolled {
    padding: 0.7rem 0;
}
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}
.header-logo {
    flex-shrink: 0;
    line-height: 0;
}
.header-logo__img {
    height: 75px;
    width: auto;
    transition: height var(--t3) var(--ease), filter var(--t3) var(--ease);
}
.site-header.scrolled .header-logo__img {
    height: 65px;
}
@media (max-width: 768px) {
    .header-logo__img { height: 55px; }
    .site-header.scrolled .header-logo__img { height: 55px; }
}


/* Desktop Nav */
.main-nav {
    display: block;
    margin: 0 auto;
}
.main-nav__list {
    display: flex;
    gap: 2.2rem;
    align-items: center;
}
.main-nav__link {
    position: relative;
    color: var(--charcoal);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.88rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0.4rem 0;
}
.main-nav__link::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--orange);
    transition: width var(--t3) var(--ease);
    border-radius: 2px;
}
.main-nav__link:hover, .main-nav__link.active {
    color: var(--orange);
}
.main-nav__link:hover::after, .main-nav__link.active::after {
    width: 100%;
}
.site-header.scrolled .main-nav__link {
    color: var(--charcoal);
}
.site-header.scrolled .main-nav__link:hover, .site-header.scrolled .main-nav__link.active {
    color: var(--orange);
}

/* Nav CTA Button */
.nav-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}
.header-actions {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    flex-shrink: 0;
}

/* Hamburger */
.hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    border: none;
    background: none;
    z-index: 1005;
    padding: 6px;
}
.hamburger__line {
    width: 26px;
    height: 2.5px;
    background: var(--charcoal);
    border-radius: 10px;
    transition: all var(--t3) var(--ease);
}
.site-header.scrolled .hamburger__line {
    background: var(--charcoal);
}
.hamburger.active .hamburger__line:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.hamburger.active .hamburger__line:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.active .hamburger__line:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ─── MOBILE NAV ─────────────────────────────────────────── */
.mobile-overlay{position:fixed;inset:0;background:rgba(11,15,26,.75);backdrop-filter:blur(6px);z-index:1001;opacity:0;visibility:hidden;transition:all var(--t3) var(--ease)}
.mobile-overlay.show{opacity:1;visibility:visible}
.mobile-nav{position:fixed;top:0;left:-340px;width:320px;height:100vh;background:var(--white);z-index:1002;transition:left var(--t5) cubic-bezier(.4,0,.2,1);padding:0;display:flex;flex-direction:column;visibility:hidden;box-shadow:20px 0 60px rgba(0,0,0,.15);overflow-y:auto;-webkit-overflow-scrolling:touch}
.mobile-nav.open{left:0;visibility:visible}
.mobile-nav__header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--slate-100)}
.mobile-nav__logo{height:55px;width:auto}
.mobile-nav__close{background:var(--slate-100);border:none;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--charcoal);font-size:1.2rem;transition:all var(--t3) var(--ease)}
.mobile-nav__close:hover{background:var(--orange);color:var(--white)}
.mobile-nav__list{padding:1.5rem 2rem;flex-grow:1}
.mobile-nav__item{border-bottom:1px solid var(--slate-100)}
.mobile-nav__link{display:block;font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--charcoal);padding:1rem 0;transition:all var(--t3) var(--ease)}
.mobile-nav__link:hover,.mobile-nav__link.active{color:var(--orange);padding-left:8px}
.mobile-nav__cta{margin:0 2rem 1rem;border-radius:var(--radius-sm)}
.mobile-nav__contact{padding:1.2rem 2rem;border-top:1px solid var(--slate-100);background:var(--off-white)}
.mobile-nav__phone{display:flex;align-items:center;gap:.8rem;color:var(--charcoal);font-weight:700;font-size:1rem}
.mobile-nav__phone i{color:var(--orange)}

/* ─── SCROLL REVEAL ──────────────────────────────────────── */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(40px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal-right.visible{opacity:1;transform:translateX(0)}

/* ─── RESPONSIVE: Header ─────────────────────────────────── */
@media(max-width:1024px){
    .main-nav{display:none}
    .hamburger{display:flex}
    .nav-cta-btn span{display:none}
    .page-container{padding:0 1.2rem}
}
@media(max-width:480px){
    .nav-cta-btn{display:none}
}

/* ============================================================
   Part 2: Hero, Ticker, Stats, About
   ============================================================ */

/* --- HERO ─────────────────────────────────────────────────── */
.hero-swipe{
    position:relative;
    height:100svh;
    min-height:640px;
    max-height:1080px;
    background:var(--charcoal);
    overflow:hidden;
    display:flex;
    align-items:center;
}

/* Background image slides */
.hero-bg-layer{position:absolute;inset:0;z-index:0}
.hero-bg-img{
    position:absolute;inset:0;
    background-size:cover;
    background-position:center top;
    opacity:0;
    transition:opacity 1.4s cubic-bezier(.4,0,.2,1), transform 8s linear;
    transform:scale(1.06);
}
.hero-bg-img.active{opacity:1;transform:scale(1)}

/* Dark gradient overlay — heavy on left for text legibility */
.hero-master-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(
        105deg,
        rgba(11,15,26,.97) 0%,
        rgba(11,15,26,.88) 38%,
        rgba(11,15,26,.55) 65%,
        rgba(11,15,26,.2) 100%
    );
}

/* Blueprint grid lines */
.hero-grid-pattern{
    position:absolute;inset:0;z-index:2;pointer-events:none;
    background-image:
        linear-gradient(rgba(255,107,0,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,107,0,.04) 1px, transparent 1px);
    background-size:80px 80px;
    animation:gridDrift 20s linear infinite;
}
@keyframes gridDrift{from{background-position:0 0}to{background-position:80px 80px}}

/* Floating glow orbs */
.hero-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:2;filter:blur(80px)}
.hero-orb--1{width:500px;height:500px;background:rgba(255,107,0,.12);top:-15%;left:55%;animation:orbFloat 12s ease-in-out infinite}
.hero-orb--2{width:320px;height:320px;background:rgba(255,107,0,.08);bottom:5%;right:10%;animation:orbFloat 9s ease-in-out 2s infinite reverse}
.hero-orb--3{width:200px;height:200px;background:rgba(0,120,255,.06);top:30%;left:30%;animation:orbFloat 15s ease-in-out 4s infinite}
@keyframes orbFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-40px) scale(1.05)}}

/* Animated bottom accent line */
.hero-bottom-line{
    position:absolute;bottom:0;left:0;right:0;height:3px;z-index:20;
    background:linear-gradient(90deg,transparent 0%,var(--orange) 30%,var(--orange) 70%,transparent 100%);
    animation:linePulse 3s ease-in-out infinite;
}
@keyframes linePulse{0%,100%{opacity:.6;transform:scaleX(.95)}50%{opacity:1;transform:scaleX(1)}}

/* Main inner layout — 2 col split */
.hero-inner{
    position:relative;z-index:10;
    display:grid;
    grid-template-columns:1fr auto;
    gap:4rem;
    align-items:center;
    padding-top:11rem;
    padding-bottom:5rem;
    width:100%;
}
.hero-left{max-width:760px}

/* Eyebrow label */
.hero-eyebrow{
    display:inline-flex;align-items:center;gap:.8rem;
    margin-bottom:1.8rem;
    animation:heroFadeUp .7s var(--ease) .2s both;
}
.hero-eyebrow__dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--orange);
    box-shadow:0 0 0 4px rgba(255,107,0,.2);
    animation:dotPulse 2s ease-in-out infinite;
    flex-shrink:0;
}
@keyframes dotPulse{0%,100%{box-shadow:0 0 0 4px rgba(255,107,0,.2)}50%{box-shadow:0 0 0 8px rgba(255,107,0,.0)}}
.hero-eyebrow__text{
    color:var(--orange);font-family:var(--font-display);
    font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.3em;
}
.hero-eyebrow__text::before{
    content:'';display:inline-block;width:28px;height:2px;
    background:var(--orange);vertical-align:middle;margin-right:.8rem;
}

/* Headline */
.hero-headline{
    font-family:var(--font-display);
    font-weight:800;
    color:var(--white);
    line-height:1.05;
    letter-spacing:-.025em;
    margin-bottom:1.8rem;
    overflow:hidden;
}
.hero-headline__line{
    display:block;
    font-size:clamp(3rem,6.5vw,6rem);
    animation:heroFadeUp .8s var(--ease) both;
}
.hero-headline__line:nth-child(1){animation-delay:.3s}
.hero-headline__line:nth-child(2){animation-delay:.45s}
.hero-headline__line:nth-child(3){animation-delay:.6s}
.hero-headline__accent{
    color:transparent;
    -webkit-text-stroke:2px var(--orange);
    text-stroke:2px var(--orange);
    font-style:italic;
}

/* Body copy */
.hero-body{
    font-size:clamp(1rem,1.4vw,1.2rem);
    color:rgba(255,255,255,.72);
    line-height:1.8;
    max-width:580px;
    margin-bottom:2.8rem;
    animation:heroFadeUp .8s var(--ease) .75s both;
}

/* CTA Buttons row */
.hero-cta-row{
    display:flex;gap:1.2rem;flex-wrap:wrap;
    margin-bottom:3rem;
    animation:heroFadeUp .8s var(--ease) .9s both;
}
.hero-btn-primary{
    background:var(--orange);
    color:var(--white);
    box-shadow:0 8px 32px rgba(255,107,0,.35);
    position:relative;overflow:hidden;
}
.hero-btn-primary::before{
    content:'';position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 60%);
    pointer-events:none;
}
.hero-btn-primary:hover{
    background:var(--orange-dark);
    transform:translateY(-4px);
    box-shadow:0 16px 48px rgba(255,107,0,.45);
    color:var(--white);
}
.hero-btn-outline{
    background:rgba(255,255,255,.06);
    color:var(--white);
    border:1.5px solid rgba(255,255,255,.3);
    backdrop-filter:blur(8px);
}
.hero-btn-outline:hover{
    background:var(--white);
    color:var(--charcoal);
    border-color:var(--white);
    transform:translateY(-4px);
}

/* Trust badges */
.hero-trust-row{
    display:flex;gap:1.8rem;flex-wrap:wrap;
    animation:heroFadeUp .8s var(--ease) 1.05s both;
}
.hero-trust-badge{
    display:flex;align-items:center;gap:.55rem;
    color:rgba(255,255,255,.5);
    font-size:.8rem;font-weight:600;letter-spacing:.04em;
    border:1px solid rgba(255,255,255,.1);
    padding:.45rem .9rem;
    border-radius:50px;
    backdrop-filter:blur(4px);
    transition:all var(--t3) var(--ease);
}
.hero-trust-badge i{color:var(--orange);font-size:.85rem}
.hero-trust-badge:hover{border-color:rgba(255,107,0,.4);color:var(--white)}

/* Floating stats card (right side) */
.hero-right{
    display:flex;
    align-items:center;
    justify-content:center;
    animation:heroFadeRight .9s var(--ease) .6s both;
}
@keyframes heroFadeRight{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
.hero-stat-card{
    position:relative;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.1);
    border-radius:var(--radius-md);
    backdrop-filter:blur(16px);
    padding:2.5rem 2rem;
    width:240px;
    overflow:hidden;
}
.hero-stat-card__inner{display:flex;flex-direction:column;gap:1.5rem;position:relative;z-index:2}
.hero-stat-item{text-align:center}
.hero-stat-num{
    display:block;
    font-family:var(--font-display);
    font-size:2.8rem;font-weight:900;
    color:var(--white);
    line-height:1;
    margin-bottom:.4rem;
}
.hero-stat-num sup{font-size:1.4rem;color:var(--orange);vertical-align:super}
.hero-stat-lbl{
    display:block;font-size:.72rem;font-weight:700;
    text-transform:uppercase;letter-spacing:.12em;
    color:var(--white);
}
.hero-stat-divider{height:1px;background:rgba(255,255,255,.08)}
.hero-stat-card__glow{
    position:absolute;bottom:-60px;left:50%;transform:translateX(-50%);
    width:160px;height:160px;border-radius:50%;
    background:var(--orange);filter:blur(60px);opacity:.2;
    pointer-events:none;z-index:1;
    animation:orbFloat 6s ease-in-out infinite;
}

/* Navigation dots + progress bar */
.hero-nav{
    position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);
    z-index:20;display:flex;flex-direction:column;align-items:center;gap:.9rem;
}
.hero-nav__dots{display:flex;gap:.7rem}
.hero-nav__dot{
    width:8px;height:8px;border-radius:50%;
    background:rgba(255,255,255,.25);
    border:none;padding:0;cursor:pointer;
    transition:all var(--t3) var(--ease);
}
.hero-nav__dot.active{background:var(--orange);width:28px;border-radius:4px}
.hero-nav__progress{width:120px;height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.hero-nav__progress-bar{
    height:100%;width:0%;
    background:linear-gradient(90deg,var(--orange),#ff9a44);
    border-radius:2px;
    transition:width 50ms linear;
}

/* Scroll cue */
.hero-scroll-cue{
    position:absolute;bottom:2.5rem;right:3rem;z-index:20;
    display:flex;flex-direction:column;align-items:center;gap:.6rem;
    color:rgba(255,255,255,.35);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;
}
.hero-scroll-cue__mouse{
    width:22px;height:34px;
    border:1.5px solid rgba(255,255,255,.25);
    border-radius:12px;
    display:flex;align-items:flex-start;justify-content:center;
    padding-top:5px;
}
.hero-scroll-cue__wheel{
    width:3px;height:8px;border-radius:3px;
    background:var(--orange);
    animation:mouseScroll 1.8s ease-in-out infinite;
}
@keyframes mouseScroll{0%{opacity:1;transform:translateY(0)}80%{opacity:0;transform:translateY(12px)}100%{opacity:0;transform:translateY(0)}}

/* Shared animation keyframes */
@keyframes heroFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}

/* ─── HERO RESPONSIVE ────────────────────────────────────── */
@media(max-width:1100px){
    .hero-right{display:none}
    .hero-inner{grid-template-columns:1fr}
}
@media(max-width:768px){
    .hero-inner{padding-top:8.5rem;padding-bottom:4rem}
    .hero-headline__line{font-size:clamp(2.4rem,9vw,4rem)}
    .hero-cta-row{gap:.9rem}
    .hero-trust-row{gap:1rem}
    .hero-trust-badge{font-size:.72rem;padding:.4rem .7rem}
    .hero-scroll-cue{display:none}
}
@media(max-width:480px){
    .hero-inner{padding-top:8rem}
    .hero-cta-row .btn-lg{padding:1rem 1.6rem;font-size:.88rem}
    .hero-trust-row{gap:.7rem}
}

/* --- EQUIPMENT TICKER ------------------------------------- */
.eq-ticker{
    background:var(--charcoal);
    padding:0;
    overflow:hidden;
    position:relative;
    z-index:20;
    border-top:1px solid rgba(255,255,255,.06);
}

/* Left label pill */
.eq-ticker__label{
    position:absolute;left:0;top:50%;transform:translateY(-50%);
    z-index:10;
    display:flex;align-items:center;gap:.6rem;
    background:var(--orange);
    color:var(--white);
    font-family:var(--font-display);font-weight:800;font-size:.72rem;
    text-transform:uppercase;letter-spacing:.15em;
    padding:.75rem 1.4rem .75rem 1.6rem;
    border-radius:0 50px 50px 0;
    white-space:nowrap;
    box-shadow:4px 0 24px rgba(255,107,0,.35);
}
.eq-ticker__label i{font-size:.65rem;opacity:.8}

/* Fade masks on left/right */
.eq-ticker::before,.eq-ticker::after{
    content:'';position:absolute;top:0;bottom:0;width:180px;z-index:5;pointer-events:none;
}
.eq-ticker::before{left:0;background:linear-gradient(to right,var(--charcoal) 30%,transparent)}
.eq-ticker::after{right:0;background:linear-gradient(to left,var(--charcoal) 0%,transparent)}

.eq-ticker__row{overflow:hidden;padding:.9rem 0}
.eq-ticker__track{
    display:flex;gap:2.5rem;
    animation:tickerFwd 40s linear infinite;
    width:max-content;align-items:center;
}
.eq-ticker__track--fwd{animation-name:tickerFwd}
.eq-ticker:hover .eq-ticker__track{animation-play-state:paused}

@keyframes tickerFwd{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.eq-ticker__item{
    display:flex;align-items:center;gap:1rem;
    padding:.6rem 1.2rem;
    border-radius:50px;
    border:1px solid rgba(255,255,255,.06);
    background:rgba(255,255,255,.03);
    color:rgba(255,255,255,.5);
    font-family:var(--font-display);font-weight:700;font-size:.85rem;
    text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;
    transition:all var(--t3) var(--ease);
    flex-shrink:0;
}
.eq-ticker__item:hover{
    background:rgba(255,107,0,.12);
    border-color:rgba(255,107,0,.35);
    color:var(--orange);
    transform:scale(1.04);
}
.eq-ticker__icon-wrap{
    width:36px;height:36px;border-radius:50%;
    background:rgba(255,107,0,.12);
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
    transition:background var(--t3) var(--ease);
}
.eq-ticker__item:hover .eq-ticker__icon-wrap{background:rgba(255,107,0,.25)}
.eq-ticker__icon-wrap img{
    height:26px;opacity:.75;
    filter:grayscale(.3) brightness(1.2);
    transition:all var(--t3) var(--ease);
}
.eq-ticker__item:hover .eq-ticker__icon-wrap img{opacity:1;filter:none}
.eq-ticker__name{line-height:1}
.eq-ticker__sep{
    width:5px;height:5px;border-radius:50%;
    background:rgba(255,107,0,.3);
    flex-shrink:0;
}

/* --- STATS ------------------------------------------------ */
.stats-section{
    padding:3.5rem 0;
    background:var(--charcoal-2);
    position:relative;
    overflow:hidden;
}
.stats-bg-grid{
    position:absolute;inset:0;pointer-events:none;
    background-image:
        linear-gradient(rgba(255,107,0,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,107,0,.03) 1px, transparent 1px);
    background-size:60px 60px;
}
.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    border:1px solid rgba(255,255,255,.06);
    border-radius:var(--radius-md);
    overflow:hidden;
}
.stat-card{
    padding:2rem 1.5rem;
    text-align:center;
    position:relative;
    border-right:1px solid rgba(255,255,255,.06);
    transition:all var(--t3) var(--ease);
    overflow:hidden;
}
.stat-card:last-child{border-right:none}
.stat-card:hover{background:rgba(255,107,0,.05)}

/* Glow orb per card */
.stat-card__glow{
    position:absolute;
    width:200px;height:200px;border-radius:50%;
    background:var(--orange);
    filter:blur(70px);opacity:0;
    top:50%;left:50%;transform:translate(-50%,-50%);
    transition:opacity .5s var(--ease);
    pointer-events:none;z-index:0;
}
.stat-card:hover .stat-card__glow{opacity:.07}

/* Icon ring */
.stat-icon-ring{
    position:relative;z-index:1;
    width:46px;height:46px;border-radius:50%;
    background:rgba(255,107,0,.1);
    border:1.5px solid rgba(255,107,0,.25);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 1rem;
    font-size:1.1rem;color:var(--orange);
    transition:all var(--t3) var(--ease);
    box-shadow:0 0 0 0 rgba(255,107,0,.2);
}
.stat-card:hover .stat-icon-ring{
    background:rgba(255,107,0,.2);
    border-color:rgba(255,107,0,.5);
    box-shadow:0 0 0 8px rgba(255,107,0,.06);
    transform:scale(1.08);
}

/* Number */
.stat-number{
    position:relative;z-index:1;
    display:flex;align-items:flex-start;justify-content:center;
    font-family:var(--font-display);
    font-size:2.4rem;font-weight:900;
    color:var(--white);line-height:1;
    margin-bottom:.6rem;
}
.stat-count{display:inline-block}
.stat-suffix{font-size:1.2rem;font-weight:900;color:var(--orange);margin-top:.2rem;margin-left:2px}
.stat-label{
    position:relative;z-index:1;
    color:rgba(255,255,255,.45);
    font-size:.72rem;font-weight:700;
    text-transform:uppercase;letter-spacing:.18em;
    margin-top:.2rem;
}

/* Bottom accent bar */
.stat-card__bar{
    position:absolute;bottom:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--orange),#ff9a44);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .4s var(--ease);
}
.stat-card:hover .stat-card__bar{transform:scaleX(1)}

/* --- ABOUT ------------------------------------------------ */
.about-section {
    padding: 8rem 0;
    background: var(--white);
    position: relative;
    overflow: hidden;
}

/* Background blueprint grid */
.about-decor-grid {
    position: absolute;
    top: 0; right: 0; width: 45%; height: 100%;
    background-image: 
        linear-gradient(rgba(255, 107, 0, 0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 107, 0, 0.02) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
    z-index: 0;
}

.about-grid {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 6.5rem;
    align-items: center;
    position: relative;
    z-index: 1;
}

/* Image column with blueprint frame */
.about-img-col {
    position: relative;
    padding: 1.5rem;
}

.about-blueprint-frame {
    position: absolute;
    inset: 0;
    border: 2px dashed rgba(255, 107, 0, 0.15);
    border-radius: calc(var(--radius-lg) + 10px);
    transform: rotate(-1.5deg);
    z-index: 0;
    pointer-events: none;
}

.about-img-wrap {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: visible;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
    aspect-ratio: 4/5;
    z-index: 1;
}

.about-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-lg);
    transition: transform 6s var(--ease);
}

.about-img-wrap:hover img {
    transform: scale(1.04);
}

/* Premium Year Badge */
.about-badge {
    position: absolute;
    bottom: 2.2rem;
    left: -2rem;
    background: var(--charcoal);
    color: var(--white);
    padding: 1.6rem 2rem;
    border-radius: var(--radius-md);
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    z-index: 5;
    border: 1px solid rgba(255,107,0,0.25);
    overflow: hidden;
}

.about-badge__glow {
    position: absolute;
    width: 100px; height: 100px;
    background: var(--orange);
    filter: blur(40px);
    opacity: 0.15;
    top: -20px; right: -20px;
}

.about-badge__since {
    display: block;
    font-size: .7rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .2em;
    color: var(--orange);
    margin-bottom: .2rem;
}

.about-badge__year {
    font-family: var(--font-display);
    font-size: 2.6rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.02em;
}

/* Floating Info Card */
.about-floating-card {
    position: absolute;
    top: 3rem;
    right: -2rem;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 107, 0, 0.2);
    padding: 1.1rem 1.6rem;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    gap: 1rem;
    box-shadow: 0 12px 32px rgba(0,0,0,0.06);
    z-index: 5;
    transition: transform var(--t3) var(--ease);
}

.about-floating-card:hover {
    transform: translateY(-5px);
}

.floating-card__icon {
    width: 38px; height: 38px;
    border-radius: 50%;
    background: rgba(255,107,0,0.1);
    color: var(--orange);
    display: flex; align-items: center; justify-content: center;
    font-size: .95rem;
}

.floating-card__text {
    display: flex; flex-direction: column;
}

.floating-card__text strong {
    font-family: var(--font-display);
    font-size: .88rem;
    color: var(--charcoal);
    font-weight: 800;
}

.floating-card__text span {
    font-size: .72rem;
    color: var(--slate-400);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* Content block elements */
.about-content-col .section-label {
    margin-bottom: .8rem;
}

.about-lead {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--charcoal);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.about-body {
    margin-bottom: 2.2rem;
    font-size: 1rem;
    color: var(--slate-600);
    line-height: 1.75;
}

/* Custom Interactive Features Card Grid */
.about-features-container {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    margin-bottom: 2.5rem;
}

.about-feat-card {
    display: flex;
    gap: 1.2rem;
    padding: 1.2rem;
    border-radius: var(--radius-md);
    background: var(--off-white);
    border: 1px solid var(--slate-100);
    transition: all var(--t3) var(--ease);
}

.about-feat-card:hover {
    background: var(--white);
    border-color: rgba(255,107,0,0.25);
    box-shadow: 0 8px 24px rgba(255,107,0,0.05);
    transform: translateX(6px);
}

.about-feat-icon-box {
    width: 46px; height: 46px;
    border-radius: var(--radius-sm);
    background: rgba(255,107,0,0.08);
    color: var(--orange);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
    transition: all var(--t3) var(--ease);
}

.about-feat-card:hover .about-feat-icon-box {
    background: var(--orange);
    color: var(--white);
    transform: scale(1.08);
}

.about-feat-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-feat-content h3 {
    font-family: var(--font-display);
    font-size: .95rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: .25rem;
}

.about-feat-content p {
    font-size: .85rem;
    color: var(--slate-500);
    line-height: 1.5;
}

.mt-24 {
    margin-top: 1.5rem;
}


/* --- RESPONSIVE P2 ---------------------------------------- */
@media(max-width:1024px){
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .stat-card{border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}
    .stat-card:nth-child(odd){border-right:1px solid rgba(255,255,255,.06)}
    .about-section{padding:4.5rem 0}
    .about-grid{grid-template-columns:1fr;gap:4rem}
    .about-decor-grid{display:none}
    .about-badge{left:1rem;bottom:1.5rem}
    .about-floating-card{right:1rem;top:2rem}
    .eq-ticker__label{display:none}
}
@media(max-width:640px){
    .about-section{padding:3.5rem 0}
    .stat-card{padding:2rem 1rem}
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .stat-number{font-size:2.4rem}
    .stat-suffix{font-size:1.4rem}
    .stat-icon-ring{width:50px;height:50px;font-size:1.1rem;margin-bottom:1rem}
    .stat-label{font-size:.65rem;letter-spacing:.1em}
    .about-img-col{padding:0.5rem}
    .about-blueprint-frame{display:none}
    .about-badge{left:0.5rem;bottom:1rem;padding:1rem 1.4rem}
    .about-badge__year{font-size:2rem}
    .about-floating-card{right:0.5rem;top:1rem;padding:.8rem 1.1rem;gap:.6rem}
    .floating-card__icon{width:30px;height:30px;font-size:.75rem}
    .floating-card__text strong{font-size:.75rem}
    .floating-card__text span{font-size:.6rem}
    .about-feat-card{gap:1rem;padding:1rem}
    .testi-card{min-width:100%}
}
@media(min-width:641px) and (max-width:991px){
    .testi-card{min-width:calc(50% - 1rem)}
}


/* ============================================================
   Part 3: Products, CTA, Why Us, Industries, Process
   ============================================================ */

/* --- PRODUCTS --------------------------------------------- */
.products-section {
    padding: 8rem 0;
    background: var(--off-white);
    position: relative;
    overflow: hidden;
}

.products-glow-orb {
    position: absolute;
    top: -200px;
    left: -200px;
    width: 600px;
    height: 600px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,107,0,0.04) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

.section-line {
    width: 60px;
    height: 4px;
    background: var(--orange);
    margin-top: 1rem;
    border-radius: 2px;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.8rem;
    position: relative;
    z-index: 1;
}

.product-card {
    background: var(--white);
    border-radius: var(--radius-md);
    overflow: hidden;
    border: 1px solid var(--slate-100);
    box-shadow: 0 4px 12px rgba(11,15,26,0.02);
    transition: all var(--t3) var(--ease);
    display: flex;
    flex-direction: column;
    position: relative;
    text-decoration: none;
}

.product-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--orange), #ff8a33);
    transform: scaleX(0);
    transition: transform var(--t3) var(--ease);
    transform-origin: left;
}

.product-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(255, 107, 0, 0.08);
    border-color: rgba(255,107,0,0.15);
}

.product-card:active {
    transform: translateY(-3px) scale(0.99);
    box-shadow: 0 8px 20px rgba(255, 107, 0, 0.05);
}

.product-card:hover::after {
    transform: scaleX(1);
}

.product-card__img {
    height: 220px;
    overflow: hidden;
    background: var(--slate-100);
    position: relative;
    z-index: 1;
}

.product-card__img-inner {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 1.2s var(--ease);
}

.product-card:hover .product-card__img-inner {
    transform: scale(1.08);
}

.product-card__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: rgba(11, 15, 26, 0.75);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--white);
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    padding: 0.35rem 0.8rem;
    border-radius: 4px;
    z-index: 2;
}

.product-card__body {
    padding: 2rem 1.8rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    z-index: 2;
    position: relative;
}

.product-card__specs {
    display: flex;
    gap: 0.6rem;
    margin-bottom: 1.1rem;
    flex-wrap: wrap;
}

.spec-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--orange);
    background: rgba(255, 107, 0, 0.06);
    border: 1px solid rgba(255, 107, 0, 0.12);
    padding: 0.25rem 0.6rem;
    border-radius: 4px;
    letter-spacing: 0.02em;
}

.spec-pill i {
    font-size: 0.75rem;
}

.product-card h3 {
    font-family: var(--font-display);
    font-size: 1.28rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 0.8rem;
    transition: color var(--t3) var(--ease);
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.product-card:hover h3 {
    color: var(--orange);
}

.product-card p {
    font-size: 0.88rem;
    color: var(--slate-500);
    flex-grow: 1;
    margin-bottom: 1.8rem;
    line-height: 1.6;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.product-card__link {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 0.82rem;
    color: var(--orange);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: auto;
    transition: gap var(--t3) var(--ease);
}

.product-card__link i {
    transition: transform var(--t3) var(--ease);
}

.product-card:hover .product-card__link {
    gap: 0.8rem;
}

.product-card:hover .product-card__link i {
    transform: translateX(4px);
}

/* --- CTA SECTION ------------------------------------------ */
.cta-section {
    padding: 8rem 0;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    position: relative;
    overflow: hidden;
}

.cta-section__overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 80% 50%, rgba(255, 107, 0, 0.15) 0%, rgba(11, 15, 26, 0.98) 70%, rgba(11, 15, 26, 1) 100%);
    z-index: 1;
}

.cta-inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4rem;
    flex-wrap: wrap;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    padding: 4.5rem 5rem;
    border-radius: var(--radius-lg);
    backdrop-filter: blur(12px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
}

.cta-content {
    flex: 1.2;
    min-width: 320px;
    border-left: 4px solid var(--orange);
    padding-left: 2rem;
}

.cta-title {
    font-family: var(--font-display);
    font-size: clamp(2.2rem, 4vw, 3.2rem);
    font-weight: 800;
    color: var(--white);
    margin-bottom: 1.2rem;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.cta-desc {
    font-size: 1.1rem;
    color: rgba(255, 255, 255, 0.65);
    max-width: 580px;
    line-height: 1.8;
}

.cta-actions {
    flex: 0.8;
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    min-width: 320px;
}

.cta-actions .btn {
    flex: 1;
    min-width: 190px;
    text-align: center;
    justify-content: center;
    display: inline-flex;
    align-items: center;
}

/* Call Button Hover Ring Vibration Animation */
@keyframes ringRing {
    0%, 100% { transform: rotate(0); }
    15%, 45%, 75% { transform: rotate(-12deg); }
    30%, 60%, 90% { transform: rotate(12deg); }
}

.cta-actions .btn-ghost-white i {
    transition: transform var(--t3) var(--ease);
}

.cta-actions .btn-ghost-white:hover i {
    animation: ringRing 0.6s ease-in-out infinite;
}

/* --- WHY CHOOSE US ---------------------------------------- */
.why-section{padding:8rem 0;background:var(--charcoal);color:var(--white);position:relative;overflow:hidden}
.why-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}
.why-glow{position:absolute;top:-200px;right:-200px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(255,107,0,.12) 0%,transparent 70%);pointer-events:none}
.why-header{position:relative;z-index:2;max-width:700px;margin-bottom:4rem}
.why-sub{font-size:1.1rem;color:rgba(255,255,255,.6);margin-top:1.2rem;line-height:1.8}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;position:relative;z-index:2}
.why-card{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);padding:3rem 2.5rem;border-radius:var(--radius-md);transition:all var(--t3) var(--ease);backdrop-filter:blur(8px);position:relative;overflow:hidden}
.why-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transition:transform var(--t3) var(--ease);transform-origin:left}
.why-card:hover{transform:translateY(-10px);border-color:rgba(255,107,0,.25);background:rgba(255,107,0,.04);box-shadow:0 20px 50px rgba(0,0,0,.4)}
.why-card:hover::before{transform:scaleX(1)}
.why-card__icon{font-size:2.5rem;color:var(--orange);margin-bottom:2rem}
.why-card h3{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--white);margin-bottom:1rem}
.why-card p{color:rgba(255,255,255,.55);line-height:1.75;font-size:.95rem}

/* --- INDUSTRIES ------------------------------------------- */
.industries-section{padding:8rem 0;background:var(--white)}
.industries-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.industry-item{height:380px;position:relative;border-radius:var(--radius-md);overflow:hidden;background-size:cover;background-position:center;display:flex;align-items:flex-end;cursor:pointer}
.industry-item__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,15,26,.92) 0%,rgba(11,15,26,.2) 55%,transparent 100%);transition:background var(--t3) var(--ease)}
.industry-item:hover .industry-item__overlay{background:linear-gradient(to top,rgba(255,107,0,.9) 0%,rgba(11,15,26,.6) 60%,transparent 100%)}
.industry-item__content{position:relative;z-index:2;padding:2.5rem;width:100%;transform:translateY(12px);transition:transform var(--t3) var(--ease)}
.industry-item:hover .industry-item__content{transform:translateY(0)}
.industry-item i{display:block;font-size:2.2rem;color:var(--orange);margin-bottom:1rem;transition:color var(--t3) var(--ease)}
.industry-item:hover i{color:var(--white)}
.industry-item h3{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--white);line-height:1.2}
.industry-item__arrow{display:flex;align-items:center;gap:.5rem;margin-top:.8rem;color:rgba(255,255,255,.6);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:0;transition:opacity var(--t3) var(--ease)}
.industry-item:hover .industry-item__arrow{opacity:1}

/* --- PROCESS ---------------------------------------------- */
.process-section{padding:8rem 0;background:var(--off-white)}
.process-track{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative;margin-top:1rem}
.process-track::before{content:'';position:absolute;top:50px;left:10%;right:10%;height:2px;background:repeating-linear-gradient(90deg,var(--orange) 0,var(--orange) 8px,transparent 8px,transparent 18px);z-index:0;opacity:.3}
.process-step{background:var(--white);border-radius:var(--radius-md);padding:2.5rem 2rem;border:1px solid var(--slate-100);box-shadow:var(--shadow-sm);transition:all var(--t3) var(--ease);position:relative;z-index:1}
.process-step:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:rgba(255,107,0,.2)}
.process-step__number{font-family:var(--font-display);font-size:3.5rem;font-weight:900;color:rgba(255,107,0,.12);line-height:1;margin-bottom:.5rem}
.process-step__icon{width:48px;height:48px;border-radius:12px;background:rgba(255,107,0,.1);display:flex;align-items:center;justify-content:center;color:var(--orange);font-size:1.3rem;margin-bottom:1.5rem;transition:all var(--t3) var(--ease)}
.process-step:hover .process-step__icon{background:var(--orange);color:var(--white)}
.process-step h3{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:var(--charcoal);margin-bottom:.8rem;line-height:1.3}
.process-step p{font-size:.9rem;color:var(--slate-400);line-height:1.7}
.process-connector{display:none}

/* --- RESPONSIVE P3 ---------------------------------------- */
@media(max-width:1200px){
    .products-grid{grid-template-columns:repeat(2,1fr)}
    .why-grid{grid-template-columns:repeat(2,1fr)}
    .process-track{grid-template-columns:repeat(2,1fr)}
    .process-track::before{display:none}
}
@media(max-width:768px){
    .products-grid,.why-grid,.industries-grid,.process-track{grid-template-columns:1fr}
    .industry-item{height:280px}
    .cta-inner{flex-direction:column;text-align:center}
    .cta-actions{justify-content:center}
}

/* ============================================================
   Part 4: Testimonials, Inquiry/FAQ, Footer, WhatsApp, BackTop
   ============================================================ */

/* --- TESTIMONIALS ----------------------------------------- */
.testimonials-section{padding:8rem 0;background:var(--charcoal);position:relative;overflow:hidden}
.testimonials-bg{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.testi-slider-wrap{overflow:hidden;margin-top:1rem;padding-bottom:.5rem;cursor:grab}
.testi-slider-wrap:active{cursor:grabbing}
.testi-track {
    display: flex;
    gap: 2rem;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.testi-card {
    min-width: calc(33.333% - 1.35rem);
    width: calc(33.333% - 1.35rem);
    background: rgba(255, 255, 255, 0.03);
    padding: 3.5rem 3rem;
    border-radius: var(--radius-lg);
    border: 1px solid rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(12px);
    transition: all var(--t3) var(--ease);
    flex-shrink: 0;
    position: relative;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
}

.testi-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(255, 107, 0, 0.08);
}

/* Testimonials Responsive Overrides */
@media (max-width: 1100px) {
    .testi-card {
        min-width: calc(50% - 1rem);
        width: calc(50% - 1rem);
        padding: 3rem 2.5rem;
    }
}

@media (max-width: 768px) {
    .testi-card {
        min-width: 100%;
        width: 100%;
        padding: 2.5rem 2rem;
    }
    .testi-text {
        font-size: 1rem;
        margin-bottom: 2rem;
    }
    .testi-track {
        gap: 1.5rem;
    }
}
.testi-stars{color:#f59e0b;margin-bottom:1.5rem;font-size:1.1rem;letter-spacing:.2em}
.testi-text{font-size:1.05rem;color:rgba(255,255,255,.75);font-style:italic;line-height:1.85;margin-bottom:2.5rem;position:relative;padding-left:1.5rem}
.testi-text::before{content:'"';position:absolute;left:0;top:-8px;font-size:3rem;color:var(--orange);opacity:.5;font-family:Georgia,serif;line-height:1}
.testi-author{display:flex;align-items:center;gap:1.2rem;border-top:1px solid rgba(255,255,255,.08);padding-top:2rem}
.testi-avatar{width:52px;height:52px;border-radius:50%;background:var(--orange);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:1.1rem;flex-shrink:0;box-shadow:0 4px 12px rgba(255,107,0,.3)}
.testi-author strong{display:block;font-family:var(--font-display);font-weight:800;color:var(--white);font-size:1rem}
.testi-author span{color:rgba(255,255,255,.45);font-size:.82rem;margin-top:.2rem;display:block}
.testi-controls{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:3rem;position:relative;z-index:5}
.testi-btn{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:var(--white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--t3) var(--ease);font-size:.9rem}
.testi-btn:hover{background:var(--orange);border-color:var(--orange);transform:scale(1.08)}
.testi-dots{display:flex;gap:.6rem;align-items:center}
.slider-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.2);cursor:pointer;transition:all var(--t3) var(--ease);border:none;padding:0}
.slider-dot.active{background:var(--orange);width:24px;border-radius:4px}

/* --- INQUIRY + FAQ ---------------------------------------- */
.inquiry-faq-section{padding:8rem 0;background:var(--off-white)}
.inquiry-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.inquiry-col{background:var(--white);padding:3.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--slate-100)}
.inquiry-desc{font-size:1.05rem;color:var(--slate-400);margin-bottom:2.5rem;line-height:1.75}
.iform-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.iform-group{margin-bottom:1.2rem}
.iform-label{display:block;font-family:var(--font-display);font-weight:700;font-size:.88rem;color:var(--charcoal);margin-bottom:.5rem}
.req{color:#ef4444;margin-left:2px}
.iform-control{width:100%;padding:.9rem 1.1rem;border:1.5px solid var(--slate-200);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.95rem;color:var(--charcoal);background:var(--off-white);transition:all var(--t3) var(--ease)}
.iform-control:focus{outline:none;border-color:var(--orange);background:var(--white);box-shadow:0 0 0 4px rgba(255,107,0,.1)}
.iform-control::placeholder{color:var(--slate-400);font-size:.9rem}
.iform-control.is-invalid{border-color:#ef4444}
.invalid-feedback{color:#ef4444;font-size:.82rem;margin-top:.3rem}

.faq-col{padding-top:1rem}
.faq-accordion{margin-top:3rem;display:flex;flex-direction:column;gap:.8rem}
.faq-item{background:var(--white);border-radius:var(--radius-sm);border:1px solid var(--slate-100);overflow:hidden;transition:all var(--t3) var(--ease)}
.faq-item:hover{border-color:rgba(255,107,0,.2)}
.faq-item.open{border-color:rgba(255,107,0,.3);box-shadow:0 4px 16px rgba(255,107,0,.08)}
.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1.8rem;background:none;border:none;font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--charcoal);cursor:pointer;text-align:left;transition:color var(--t3) var(--ease)}
.faq-question:hover,.faq-item.open .faq-question{color:var(--orange)}
.faq-icon{color:var(--orange);font-size:.9rem;flex-shrink:0;transition:transform var(--t3) var(--ease);pointer-events:none}
.faq-item.open .faq-icon{color:var(--orange)}
.faq-answer{padding:0 1.8rem;max-height:0;overflow:hidden;transition:all .4s var(--ease);color:var(--slate-600);line-height:1.75;font-size:.95rem}
.faq-item.open .faq-answer{padding:0 1.8rem 1.5rem;max-height:400px}

/* --- FOOTER ----------------------------------------------- */
.site-footer{background:var(--charcoal-2);color:rgba(255,255,255,.65)}
.footer-cta-bar{background:var(--orange);padding:4rem 0}
.footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;flex-wrap:wrap}
.footer-cta-label{display:block;font-family:var(--font-display);font-size:1.6rem;font-weight:800;color:var(--white);margin-bottom:.5rem}
.footer-cta-text p{color:rgba(255,255,255,.8);font-size:1rem}
.footer-cta-actions{display:flex;gap:1.2rem;flex-wrap:wrap;flex-shrink:0}
.btn-footer-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.6);backdrop-filter:blur(4px)}
.btn-footer-outline:hover{background:rgba(255,255,255,.15);transform:translateY(-3px)}

.footer-main{padding:5rem 0 3rem}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.2fr;gap:3.5rem}
.footer-col__title{font-family:var(--font-display);font-size:1rem;font-weight:800;color:var(--white);margin-bottom:1.8rem;display:flex;align-items:center;gap:.8rem;text-transform:uppercase;letter-spacing:.08em}
.footer-col__num{font-size:1.5rem;font-weight:900;color:rgba(255,107,0,.25);font-family:var(--font-display)}
.footer-logo__img{height:68px;width:auto;margin-bottom:1.5rem}
.footer-brand-desc{font-size:.88rem;line-height:1.75;color:rgba(255,255,255,.45);margin-bottom:2rem}
.footer-socials{display:flex;gap:.8rem;margin-bottom:2rem}
.footer-social-link{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);transition:all var(--t3) var(--ease);font-size:.9rem}
.footer-social-link:hover{background:var(--orange);border-color:var(--orange);color:var(--white);transform:translateY(-3px)}
.footer-social-link--wa:hover{background:#25d366;border-color:#25d366}
.footer-trust-badges{display:flex;align-items:center;gap:1rem;padding:1.2rem;background:rgba(255,255,255,.03);border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.06)}
.ftb-item{text-align:center;flex:1}
.ftb-num{display:block;font-family:var(--font-display);font-size:1.4rem;font-weight:900;color:var(--orange);line-height:1}
.ftb-label{display:block;font-size:.7rem;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.1em;margin-top:.2rem}
.ftb-divider{width:1px;height:40px;background:rgba(255,255,255,.08)}

.footer-links{display:flex;flex-direction:column;gap:.6rem}
.footer-links a{display:flex;align-items:center;gap:.6rem;color:rgba(255,255,255,.5);font-size:.88rem;transition:all var(--t3) var(--ease);padding:.3rem 0}
.footer-links a:hover{color:var(--orange);padding-left:4px}
.footer-links i{font-size:.65rem;color:var(--orange);opacity:.7}

.footer-contact-list{display:flex;flex-direction:column;gap:1.2rem}
.fc-item{display:flex;align-items:flex-start;gap:.9rem}
.fc-icon{width:34px;height:34px;border-radius:50%;background:rgba(255,107,0,.1);border:1px solid rgba(255,107,0,.2);display:flex;align-items:center;justify-content:center;color:var(--orange);font-size:.8rem;flex-shrink:0;margin-top:.1rem}
.fc-item a,.fc-item span{color:rgba(255,255,255,.55);font-size:.88rem;line-height:1.5;transition:color var(--t3) var(--ease)}
.fc-item a:hover{color:var(--orange)}

.footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding:1.5rem 0}
.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.footer-copyright{font-size:.82rem;color:rgba(255,255,255,.35)}
.footer-copyright strong{color:rgba(255,255,255,.6)}
.footer-legal-nav{display:flex;gap:1.2rem;align-items:center}
.footer-legal-nav a{font-size:.8rem;color:rgba(255,255,255,.35);transition:color var(--t3) var(--ease)}
.footer-legal-nav a:hover{color:var(--orange)}
.footer-legal-nav span{color:rgba(255,255,255,.15);font-size:.7rem}
.footer-credit{font-size:.78rem;color:rgba(255,255,255,.3)}
.footer-credit a{color:var(--orange)}

/* --- WHATSAPP BUTTON -------------------------------------- */
.whatsapp-fab{position:fixed;bottom:2rem;right:2rem;z-index:900;background:#25d366;color:var(--white);width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;box-shadow:0 8px 25px rgba(37,211,102,.4);transition:all var(--t3) var(--ease);animation:waPulse 2s ease infinite}
.whatsapp-fab:hover{transform:scale(1.12);box-shadow:0 12px 30px rgba(37,211,102,.5);color:var(--white)}
@keyframes waPulse{0%,100%{box-shadow:0 8px 25px rgba(37,211,102,.4)}50%{box-shadow:0 8px 40px rgba(37,211,102,.6),0 0 0 10px rgba(37,211,102,.1)}}

/* --- MOBILE STICKY BAR ------------------------------------ */
.mobile-sticky-bar{display:none;position:fixed;bottom:0;left:0;width:100%;background:var(--white);box-shadow:0 -4px 20px rgba(0,0,0,.08);z-index:1000;border-top:1px solid var(--slate-200)}
.sticky-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.6rem 0;color:var(--charcoal);font-size:.7rem;font-family:var(--font-display);font-weight:700;text-transform:uppercase;transition:all var(--t3) var(--ease);border-right:1px solid var(--slate-100)}
.sticky-item:last-child{border-right:none}
.sticky-item i{font-size:1.2rem;margin-bottom:.3rem;transition:transform var(--t3) var(--ease)}
.sticky-call i{color:#2563eb}
.sticky-whatsapp i{color:#25d366}
.sticky-book i{color:var(--orange)}
.sticky-directions i{color:#ea4335}
.sticky-item:hover{background:var(--off-white)}
.sticky-item:hover i{transform:translateY(-3px)}

/* --- BACK TO TOP ------------------------------------------ */
#backToTop{position:fixed;bottom:6.5rem;right:2rem;z-index:800;width:46px;height:46px;border-radius:50%;background:var(--orange);color:var(--white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:0;visibility:hidden;transform:translateY(20px);transition:all var(--t3) var(--ease);box-shadow:var(--shadow-orange)}
#backToTop.visible{opacity:1;visibility:visible;transform:translateY(0)}
#backToTop:hover{background:var(--orange-dark);transform:translateY(-4px)}

/* --- QUOTE MODAL ------------------------------------------ */
.quote-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:1.5rem}
.quote-modal.is-open{display:flex}
.quote-modal__backdrop{position:absolute;inset:0;background:rgba(11,15,26,.85);backdrop-filter:blur(8px)}
.quote-modal__box{position:relative;z-index:2;background:var(--white);width:100%;max-width:520px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);animation:modalIn .35s var(--ease) both}
@keyframes modalIn{from{opacity:0;transform:scale(.96) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}
.quote-modal__header{padding:2rem 2.5rem;border-bottom:1px solid var(--slate-100);display:flex;justify-content:space-between;align-items:center}
.quote-modal__header h3{font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--charcoal)}
.close-quote-modal{background:var(--off-white);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--charcoal);font-size:1.1rem;transition:all var(--t3) var(--ease)}
.close-quote-modal:hover{background:var(--orange);color:var(--white)}
.quote-modal__form{padding:2rem 2.5rem}

/* --- RESPONSIVE P4 ---------------------------------------- */
@media(max-width:1024px){
    .products-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}
    .products-section{padding:5rem 0}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem}
    .inquiry-faq-grid{grid-template-columns:1fr;gap:3.5rem}
    .testi-card{min-width:calc(50% - 1rem)}
    .footer-bottom-inner{flex-direction:column;text-align:center}
    .footer-cta-inner{flex-direction:column;text-align:center}
    .footer-cta-actions{justify-content:center}
}
@media(max-width:768px){
    .mobile-sticky-bar{display:flex}
    .whatsapp-fab{bottom:5.5rem;right:1.5rem}
    #backToTop{bottom:9.5rem;right:1.5rem;left:auto}
    body{padding-bottom:50px}
}
@media(max-width:640px){
    .products-grid{grid-template-columns:1fr;gap:1.5rem}
    .products-section{padding:4rem 0}
    .product-card__img{height:180px}
    .product-card__body{padding:1.5rem}
    .footer-grid{grid-template-columns:1fr}
    .footer-cta-bar{padding:3rem 0}
    .footer-cta-text{padding:0 1rem}
    .testi-card{min-width:100%}
    .iform-row{grid-template-columns:1fr}
    .inquiry-col{padding:2rem 1.5rem}
    .footer-main{padding:3rem 0 2rem}
    .footer-legal-nav{flex-wrap:wrap;justify-content:center}
    .footer-bottom-inner{gap:1rem}
}

/* ============================================================
   ABOUT PAGE — PREMIUM INDUSTRIAL ALTERNATING SYSTEM
   ============================================================ */
:root {
    --color-orange: #ff6b00;
    --color-orange-dark: #e05a00;
    --color-orange-glow: rgba(255, 107, 0, 0.2);
    --bg-dark-master: #0b0f1a;
    --bg-dark-card: #131929;
    --bg-dark-border: rgba(255, 255, 255, 0.06);
    --bg-light-master: #f5f7fa;
    --bg-light-card: #ffffff;
    --bg-light-border: rgba(11, 15, 26, 0.06);
    
    --text-dark-title: #0b0f1a;
    --text-dark-body: #4f617a;
    --text-light-title: #ffffff;
    --text-light-body: rgba(255, 255, 255, 0.7);
    
    --radius-lg: 24px;
    --radius-md: 16px;
    --radius-sm: 8px;
    --transition-master: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-page-wrapper {
    font-family: var(--font-body);
    overflow-x: hidden;
}

/* ---- REUSABLE SECTION ALTERNATOR ---- */
.section-dark {
    background-color: var(--bg-dark-master);
    color: var(--text-light-body);
    position: relative;
}
.section-dark .section-title {
    color: var(--text-light-title) !important;
}
.section-dark p {
    color: var(--text-light-body) !important;
}

.section-light {
    background-color: var(--bg-light-master);
    color: var(--text-dark-body);
    position: relative;
}
.section-light .section-title {
    color: var(--text-dark-title) !important;
}
.section-light p {
    color: var(--text-dark-body) !important;
}

/* Floating Accent Orbs for Dark Sections */
.orb-glow {
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--color-orange-glow) 0%, transparent 70%);
    pointer-events: none;
    z-index: 1;
    animation: orbMove 15s infinite ease-in-out alternate;
}
.orb-glow--1 { top: 10%; left: -5%; }
.orb-glow--2 { bottom: 15%; right: -5%; animation-delay: 5s; }

@keyframes orbMove {
    0% { transform: translateY(0) scale(1); }
    100% { transform: translateY(50px) scale(1.15); }
}

/* Grid Overlay background decoration */
.grid-overlay {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, 0.015) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(255, 255, 255, 0.015) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
    z-index: 2;
}
.section-light .grid-overlay {
    background-image: linear-gradient(rgba(11, 15, 26, 0.015) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(11, 15, 26, 0.015) 1px, transparent 1px);
}

/* ---- 1. HERO SECTION (DARK) ---- */
.about-hero {
    position: relative;
    min-height: 80vh;
    display: flex;
    align-items: center;
    padding: 8rem 0 6rem;
    background: linear-gradient(180deg, rgba(11,15,26,0.35) 0%, var(--bg-dark-master) 100%), 
                url('front/images/factory.webp') no-repeat center center;
    background-size: cover;
    background-attachment: fixed;
    overflow: hidden;
}

.about-hero__overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 10% 50%, rgba(255, 107, 0, 0.1) 0%, transparent 60%),
                rgba(11, 15, 26, 0.75);
    z-index: 1;
}

.about-hero__content {
    position: relative;
    z-index: 5;
    max-width: 900px;
}

.about-hero__label {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(255, 107, 0, 0.12);
    border: 1px solid rgba(255, 107, 0, 0.35);
    padding: 0.5rem 1.2rem;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--color-orange);
    margin-bottom: 2rem;
    animation: fadeInUp 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.about-hero__label::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--color-orange);
    box-shadow: 0 0 10px var(--color-orange);
}

.about-hero__title {
    font-family: var(--font-display);
    font-size: clamp(2.2rem, 5vw, 4rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
    margin-bottom: 1.8rem;
    animation: fadeInUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.15s both;
}

.about-hero__title span {
    color: var(--color-orange);
    background: linear-gradient(135deg, #ffffff 30%, var(--color-orange) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.about-hero__desc {
    font-size: clamp(1rem, 2vw, 1.25rem);
    color: var(--text-light-body);
    line-height: 1.65;
    margin-bottom: 2.5rem;
    animation: fadeInUp 1.2s cubic-bezier(0.25, 1, 0.5, 1) 0.3s both;
}

.about-hero__ctas {
    display: flex;
    gap: 1.2rem;
    flex-wrap: wrap;
    animation: fadeInUp 1.4s cubic-bezier(0.25, 1, 0.5, 1) 0.45s both;
}

/* ---- 2. WHO WE ARE (LIGHT) ---- */
.intro-section {
    padding: 8rem 0;
    position: relative;
}

.intro-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 5rem;
    align-items: center;
    position: relative;
    z-index: 5;
}

.intro-image-wrap {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(11, 15, 26, 0.12);
    background: var(--bg-light-card);
    padding: 8px;
    border: 1px solid var(--bg-light-border);
}

.intro-image-wrap img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--radius-md);
    transition: var(--transition-master);
}

.intro-image-wrap:hover img {
    transform: scale(1.03);
}

.experience-badge {
    position: absolute;
    bottom: 2.5rem;
    right: 2.5rem;
    background: var(--bg-dark-master);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1.5rem 2rem;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    gap: 1.2rem;
    box-shadow: var(--shadow-lg);
    color: #ffffff;
}

.experience-badge__number {
    font-family: var(--font-display);
    font-size: 3rem;
    font-weight: 800;
    color: var(--color-orange);
    line-height: 1;
}

.experience-badge__text {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 1.3;
}

.intro-text p {
    font-size: 1.05rem;
    line-height: 1.8;
    margin-bottom: 1.5rem;
}

.stat-strip {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    margin-top: 3rem;
    border-top: 1px solid var(--bg-light-border);
    padding-top: 2rem;
}

.stat-strip-item__num {
    font-family: var(--font-display);
    font-size: 2.2rem;
    font-weight: 800;
    color: var(--text-dark-title);
    margin-bottom: 0.4rem;
}

.stat-strip-item__label {
    font-size: 0.88rem;
    color: var(--text-dark-body);
    line-height: 1.4;
}

/* ---- 3. OUR VISION, MISSION & VALUES (DARK) ---- */
.vision-section {
    padding: 8rem 0;
    position: relative;
}

.vision-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
    margin-top: 4rem;
    position: relative;
    z-index: 5;
}

.vision-card {
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
    padding: 3rem 2.2rem;
    border-radius: var(--radius-lg);
    backdrop-filter: blur(12px);
    transition: var(--transition-master);
    display: flex;
    flex-direction: column;
}

.vision-card:hover {
    border-color: rgba(255, 107, 0, 0.4);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.05) 0%, var(--bg-dark-card) 100%);
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

.vision-card__icon {
    width: 60px;
    height: 60px;
    border-radius: var(--radius-md);
    background: rgba(255, 107, 0, 0.08);
    border: 1px solid rgba(255, 107, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-orange);
    font-size: 1.8rem;
    margin-bottom: 2rem;
    transition: var(--transition-master);
}

.vision-card:hover .vision-card__icon {
    background: var(--color-orange);
    color: #ffffff;
    box-shadow: 0 0 20px var(--color-orange-glow);
}

.vision-card__title {
    font-family: var(--font-display);
    font-size: 1.4rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 1.2rem;
}

.vision-card__desc {
    font-size: 0.95rem;
    line-height: 1.7;
    color: var(--text-light-body);
}

/* ---- 4. JOURNEY TIMELINE (LIGHT) ---- */
.timeline-section {
    padding: 8rem 0;
}

.timeline-track {
    position: relative;
    margin-top: 5rem;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
    z-index: 5;
}

.timeline-track::before {
    content: '';
    position: absolute;
    top: 2rem;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--color-orange) 0%, rgba(11, 15, 26, 0.05) 100%);
    z-index: 1;
}

.timeline-node {
    position: relative;
    z-index: 2;
    padding-top: 4rem;
}

.timeline-dot {
    position: absolute;
    top: 1.5rem;
    left: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--bg-light-master);
    border: 4px solid var(--color-orange);
    box-shadow: 0 0 15px rgba(255, 107, 0, 0.3);
    transition: var(--transition-master);
}

.timeline-node:hover .timeline-dot {
    transform: scale(1.35);
    background-color: var(--color-orange);
}

.timeline-card {
    background: var(--bg-light-card);
    border: 1px solid var(--bg-light-border);
    padding: 2.2rem 1.8rem;
    border-radius: var(--radius-md);
    box-shadow: 0 8px 30px rgba(0,0,0,0.02);
    transition: var(--transition-master);
}

.timeline-node:hover .timeline-card {
    border-color: rgba(255, 107, 0, 0.25);
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(11, 15, 26, 0.08);
}

.timeline-year {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--color-orange);
    margin-bottom: 0.8rem;
}

.timeline-title {
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: 0.6rem;
    color: var(--text-dark-title);
}

.timeline-desc {
    font-size: 0.88rem;
    color: var(--text-dark-body);
    line-height: 1.6;
}

/* ---- 5. INFRASTRUCTURE (DARK) ---- */
.infra-section {
    padding: 8rem 0;
}

.infra-grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 5rem;
    align-items: center;
    position: relative;
    z-index: 5;
}

.infra-features {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.infra-card {
    display: flex;
    gap: 1.5rem;
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
    padding: 2rem;
    border-radius: var(--radius-md);
    transition: var(--transition-master);
}

.infra-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    transform: translateX(5px);
    background: linear-gradient(90deg, rgba(255,107,0,0.02) 0%, var(--bg-dark-card) 100%);
}

.infra-icon {
    width: 50px;
    height: 50px;
    border-radius: var(--radius-sm);
    background: rgba(255, 107, 0, 0.1);
    border: 1px solid rgba(255, 107, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-orange);
    font-size: 1.4rem;
    flex-shrink: 0;
}

.infra-info h3 {
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #ffffff;
}

.infra-info p {
    font-size: 0.9rem;
    color: var(--text-light-body);
    line-height: 1.6;
}

.infra-display {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.5);
    padding: 8px;
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
}

.infra-display img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--radius-md);
}

.infra-display__lens {
    position: absolute;
    inset: 8px;
    border-radius: var(--radius-md);
    background: linear-gradient(45deg, rgba(255,107,0,0.1) 0%, transparent 70%);
    pointer-events: none;
}

/* ---- 6. TECHNICAL WORKFLOW (LIGHT) ---- */
.process-section {
    padding: 8rem 0;
}

.process-flow {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
    margin-top: 4rem;
    position: relative;
    z-index: 5;
}

.process-step {
    position: relative;
    background: var(--bg-light-card);
    border: 1px solid var(--bg-light-border);
    border-radius: var(--radius-md);
    padding: 2.5rem 2rem;
    box-shadow: 0 8px 30px rgba(0,0,0,0.02);
    transition: var(--transition-master);
}

.process-step:hover {
    border-color: var(--color-orange);
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(255,107,0,0.08);
}

.process-step__number {
    font-family: var(--font-display);
    font-size: 3rem;
    font-weight: 900;
    color: rgba(255, 107, 0, 0.08);
    position: absolute;
    top: 1.5rem;
    right: 1.8rem;
    line-height: 1;
    transition: var(--transition-master);
}

.process-step:hover .process-step__number {
    color: rgba(255, 107, 0, 0.2);
}

.process-step__title {
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 0.8rem;
    color: var(--text-dark-title);
}

.process-step__desc {
    font-size: 0.88rem;
    color: var(--text-dark-body);
    line-height: 1.6;
}

/* ---- 7. WHY CHOOSE US (DARK) ---- */
.why-section {
    padding: 8rem 0;
}

.why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.2rem;
    margin-top: 4rem;
    position: relative;
    z-index: 5;
}

.why-card {
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
    padding: 3rem 2.2rem;
    border-radius: var(--radius-lg);
    backdrop-filter: blur(12px);
    transition: var(--transition-master);
    text-align: left;
}

.why-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.04) 0%, var(--bg-dark-card) 100%);
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}

.why-card__icon {
    width: 60px;
    height: 60px;
    border-radius: var(--radius-md);
    background: rgba(255, 107, 0, 0.08);
    border: 1px solid rgba(255, 107, 0, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-orange);
    font-size: 1.8rem;
    margin-bottom: 2rem;
}

.why-card__title {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: #ffffff;
}

.why-card__desc {
    font-size: 0.92rem;
    color: var(--text-light-body);
    line-height: 1.7;
}

/* ---- 8. INDUSTRIES WE SERVE (LIGHT) ---- */
.industries-section {
    padding: 8rem 0;
}

.ind-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5rem;
    margin-top: 4rem;
    position: relative;
    z-index: 5;
}

.ind-card {
    position: relative;
    height: 280px;
    border-radius: var(--radius-md);
    overflow: hidden;
    border: 1px solid var(--bg-light-border);
    box-shadow: 0 8px 30px rgba(0,0,0,0.02);
    cursor: pointer;
}

.ind-card__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}

.ind-card:hover .ind-card__bg {
    transform: scale(1.08);
}

.ind-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(11,15,26,0.1) 0%, rgba(11,15,26,0.85) 100%);
    z-index: 1;
}

.ind-card__content {
    position: absolute;
    bottom: 2rem;
    left: 1.5rem;
    right: 1.5rem;
    z-index: 2;
}

.ind-card__icon {
    color: var(--color-orange);
    font-size: 1.6rem;
    margin-bottom: 1rem;
    display: block;
}

.ind-card__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff;
}

/* ---- KEYFRAMES & RESPONSIVE ---- */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1200px) {
    .timeline-track {
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem 2rem;
    }
    .timeline-track::before {
        display: none;
    }
    .timeline-node {
        padding-top: 0;
        padding-left: 2rem;
    }
    .timeline-dot {
        top: 0.5rem;
        left: 0;
    }
    .ind-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .vision-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .intro-grid, .infra-grid {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
    .why-grid, .vision-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .process-flow {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .why-grid, .process-flow, .ind-grid, .vision-grid {
        grid-template-columns: 1fr;
    }
    .timeline-track {
        grid-template-columns: 1fr;
    }
    .about-hero {
        min-height: 70vh;
        padding-top: 7rem;
    }
    .experience-badge {
        bottom: 1rem;
        right: 1rem;
        padding: 1rem 1.5rem;
    }
}

/* ============================================================
   CONTACT PAGE — PREMIUM INDUSTRIAL CORE SYSTEM
   ============================================================ */
.contact-hero {
    position: relative;
    min-height: 55vh;
    display: flex;
    align-items: center;
    padding: 8rem 0 5rem;
    background: linear-gradient(180deg, rgba(11, 15, 26, 0.4) 0%, var(--bg-dark-master) 100%), 
                url('front/images/factory.webp') no-repeat center center;
    background-size: cover;
    background-attachment: fixed;
    overflow: hidden;
    color: #ffffff;
}

.contact-hero__overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 80% 50%, rgba(255, 107, 0, 0.08) 0%, transparent 65%),
                rgba(11, 15, 26, 0.7);
    z-index: 1;
}

.contact-hero__content {
    position: relative;
    z-index: 5;
    max-width: 850px;
}

.contact-hero__label {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(255, 107, 0, 0.12);
    border: 1px solid rgba(255, 107, 0, 0.3);
    padding: 0.45rem 1.1rem;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--color-orange);
    margin-bottom: 1.5rem;
    animation: fadeInUp 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.contact-hero__label::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-orange);
    box-shadow: 0 0 10px var(--color-orange);
}

.contact-hero__title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4.5vw, 3.5rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.02em;
    margin-bottom: 1.2rem;
    animation: fadeInUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.1s both;
}

.contact-hero__title span {
    color: var(--color-orange);
    background: linear-gradient(135deg, #ffffff 40%, var(--color-orange) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.contact-hero__desc {
    font-size: clamp(0.95rem, 1.8vw, 1.15rem);
    color: var(--text-light-body);
    line-height: 1.6;
    animation: fadeInUp 1.2s cubic-bezier(0.25, 1, 0.5, 1) 0.2s both;
}

/* ---- QUICK CONTACT FLOATING BAR ---- */
.contact-info-bar {
    margin-top: -4rem;
    position: relative;
    z-index: 10;
    padding-bottom: 4rem;
}

.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.8rem;
}

.info-bar-card {
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
    padding: 2.2rem;
    border-radius: var(--radius-md);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    transition: var(--transition-master);
    backdrop-filter: blur(16px);
}

.info-bar-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    transform: translateY(-5px);
    box-shadow: 0 25px 45px rgba(255, 107, 0, 0.06);
}

.info-bar-card__icon {
    width: 52px;
    height: 52px;
    border-radius: var(--radius-sm);
    background: rgba(255, 107, 0, 0.08);
    border: 1px solid rgba(255, 107, 0, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-orange);
    font-size: 1.4rem;
    flex-shrink: 0;
    transition: var(--transition-master);
}

.info-bar-card:hover .info-bar-card__icon {
    background: var(--color-orange);
    color: #ffffff;
    box-shadow: 0 0 15px var(--color-orange-glow);
}

.info-bar-card__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 0.4rem;
}

.info-bar-card__value {
    font-size: 0.9rem;
    color: var(--text-light-body);
    line-height: 1.5;
}

.info-bar-card__value a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
}

.info-bar-card__value a:hover {
    color: var(--color-orange);
}

/* ---- SPLIT CONTACT & NAP SECTION (LIGHT) ---- */
.contact-main-section {
    padding: 6rem 0 8rem;
}

.contact-main-grid {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 5rem;
    align-items: start;
    position: relative;
    z-index: 5;
}

/* Left: Corporate NAP Detail */
.corporate-nap-details {
    display: flex;
    flex-direction: column;
    gap: 2.2rem;
}

.corporate-nap-card {
    background: var(--bg-light-card);
    border: 1px solid var(--bg-light-border);
    padding: 2.5rem;
    border-radius: var(--radius-md);
    box-shadow: 0 8px 30px rgba(11, 15, 26, 0.02);
}

.corporate-nap-title {
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--text-dark-title);
    margin-bottom: 1.2rem;
    border-bottom: 2px solid var(--color-orange);
    padding-bottom: 0.5rem;
    display: inline-block;
}

.corporate-nap-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}

.corporate-nap-list li {
    display: flex;
    gap: 1rem;
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--text-dark-body);
}

.corporate-nap-list li i {
    color: var(--color-orange);
    font-size: 1.1rem;
    margin-top: 0.2rem;
    width: 20px;
    text-align: center;
}

.regional-coverage-tag {
    display: inline-block;
    background: rgba(11, 15, 26, 0.04);
    border: 1px solid var(--bg-light-border);
    padding: 0.35rem 0.8rem;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-dark-body);
    margin: 0.2rem;
}

/* Right: Premium Form Styles Overrides */
.contact-form-card {
    background: var(--bg-light-card);
    border: 1px solid var(--bg-light-border);
    padding: 3.5rem;
    border-radius: var(--radius-lg);
    box-shadow: 0 15px 45px rgba(11, 15, 26, 0.04);
}

.contact-form-title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--text-dark-title);
    margin-bottom: 0.6rem;
}

.contact-form-subtitle {
    font-size: 0.95rem;
    color: var(--text-dark-body);
    margin-bottom: 2.5rem;
    line-height: 1.5;
}

/* ---- MAP SECTION (DARK) ---- */
.map-section {
    padding: 0;
    position: relative;
    line-height: 0;
    border-top: 1px solid var(--bg-dark-border);
    border-bottom: 1px solid var(--bg-dark-border);
}

.map-container {
    width: 100%;
    height: 480px;
    position: relative;
    overflow: hidden;
}

.map-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* Overlay lens on map edges */
.map-lens {
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset 0 20px 40px rgba(11, 15, 26, 0.12),
                inset 0 -20px 40px rgba(11, 15, 26, 0.12);
    z-index: 2;
}

/* ---- WHY CONNECT WITH US (DARK) ---- */
.why-connect-section {
    padding: 8rem 0;
}

.why-connect-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.2rem;
    margin-top: 4rem;
    position: relative;
    z-index: 5;
}

.why-connect-card {
    background: var(--bg-dark-card);
    border: 1px solid var(--bg-dark-border);
    padding: 3rem 2.2rem;
    border-radius: var(--radius-lg);
    transition: var(--transition-master);
    text-align: left;
}

.why-connect-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    background: linear-gradient(135deg, rgba(255, 107, 0, 0.04) 0%, var(--bg-dark-card) 100%);
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.why-connect-card__icon {
    width: 56px;
    height: 56px;
    border-radius: var(--radius-md);
    background: rgba(255, 107, 0, 0.08);
    border: 1px solid rgba(255, 107, 0, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-orange);
    font-size: 1.6rem;
    margin-bottom: 1.8rem;
}

.why-connect-card__title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 0.8rem;
    color: #ffffff;
}

.why-connect-card__desc {
    font-size: 0.9rem;
    color: var(--text-light-body);
    line-height: 1.65;
}

/* ---- FAQ SECTION (LIGHT) ---- */
.contact-faq-section {
    padding: 8rem 0;
}

.contact-faq-grid {
    max-width: 900px;
    margin: 4rem auto 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
    z-index: 5;
}

/* Accordion Specific Styling */
.faq-accordion-item {
    background: var(--bg-light-card);
    border: 1px solid var(--bg-light-border);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: var(--transition-master);
}

.faq-accordion-item:hover {
    border-color: rgba(255, 107, 0, 0.25);
    box-shadow: 0 10px 30px rgba(11, 15, 26, 0.02);
}

.faq-accordion-item.active {
    border-color: var(--color-orange);
    box-shadow: 0 12px 35px rgba(255, 107, 0, 0.05);
}

.faq-accordion-trigger {
    width: 100%;
    padding: 1.8rem 2.2rem;
    background: none;
    border: none;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-display);
    font-size: 1.08rem;
    font-weight: 700;
    color: var(--text-dark-title);
    cursor: pointer;
    transition: var(--transition-master);
}

.faq-accordion-trigger:hover,
.faq-accordion-item.active .faq-accordion-trigger {
    color: var(--color-orange);
}

.faq-accordion-icon {
    color: var(--color-orange);
    font-size: 0.9rem;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-accordion-item.active .faq-accordion-icon {
    transform: rotate(180deg);
}

.faq-accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    color: var(--text-dark-body);
    font-size: 0.95rem;
    line-height: 1.7;
}

.faq-accordion-content-inner {
    padding: 0 2.2rem 2.2rem;
}

/* ---- KEYFRAMES & RESPONSIVE ---- */
@media (max-width: 1200px) {
    .contact-info-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }
    .info-bar-card:last-child {
        grid-column: span 2;
    }
    .contact-main-grid {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
}

@media (max-width: 992px) {
    .why-connect-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .contact-info-grid {
        grid-template-columns: 1fr;
    }
    .info-bar-card:last-child {
        grid-column: span 1;
    }
    .why-connect-grid {
        grid-template-columns: 1fr;
    }
    .contact-form-card {
        padding: 2.2rem;
    }
    .faq-accordion-trigger {
        padding: 1.5rem 1.8rem;
        font-size: 1rem;
    }
    .faq-accordion-content-inner {
        padding: 0 1.8rem 1.8rem;
    }
}

/* ============================================================
   Part 6: Navigation Dropdowns (Desktop & Mobile)
   ============================================================ */

/* ─── DESKTOP NAV DROPDOWN ───────────────────────────────── */
.main-nav__item {
    position: relative;
}
.main-nav__item.has-dropdown {
    padding-right: 0.2rem;
}
.main-nav__item.has-dropdown:hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.nav-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(15px);
    width: 290px;
    background: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-top: 3px solid var(--orange);
    border-radius: var(--radius-sm);
    padding: 0.8rem 0;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
    opacity: 0;
    visibility: hidden;
    transition: all var(--t3) var(--ease);
    z-index: 1100;
    backdrop-filter: blur(16px);
}
.nav-dropdown__link {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 0.8rem 1.4rem;
    color: var(--charcoal);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    transition: all var(--t3) var(--ease);
    border-bottom: 1px solid var(--slate-100);
}
.nav-dropdown__link:last-child {
    border-bottom: none;
}
.nav-dropdown__link i {
    color: var(--orange);
    font-size: 0.95rem;
    width: 20px;
    text-align: center;
    transition: transform var(--t3) var(--ease);
}
.nav-dropdown__link:hover, .nav-dropdown__link.active {
    color: var(--orange);
    background: var(--off-white);
    padding-left: 1.8rem;
}
.nav-dropdown__link:hover i, .nav-dropdown__link.active i {
    transform: scale(1.25);
}

/* Scrolled Sticky Header Adjustments */
.site-header.scrolled .nav-dropdown {
    background: rgba(255, 255, 255, 0.98);
    border-color: rgba(0, 0, 0, 0.08);
    border-top-color: var(--orange);
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
}
.site-header.scrolled .nav-dropdown__link {
    color: var(--charcoal);
    border-bottom: 1px solid var(--slate-100);
}
.site-header.scrolled .nav-dropdown__link:last-child {
    border-bottom: none;
}
.site-header.scrolled .nav-dropdown__link:hover, .site-header.scrolled .nav-dropdown__link.active {
    background: var(--off-white);
    color: var(--orange);
}

/* ─── DESKTOP NAV MEGAMENU ───────────────────────────────── */
.main-nav__item.has-megamenu {
    position: static !important;
}
.main-nav__item.has-megamenu:hover .nav-megamenu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.nav-megamenu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(15px);
    width: 1100px;
    max-width: 90vw;
    background: rgba(255, 255, 255, 0.99);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-top: 3px solid var(--orange);
    border-radius: var(--radius-sm);
    padding: 2.2rem;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
    opacity: 0;
    visibility: hidden;
    transition: all var(--t3) var(--ease);
    z-index: 1100;
    backdrop-filter: blur(16px);
}
.megamenu-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.8rem;
}
.megamenu-col {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.megamenu-title {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 0.82rem;
    color: var(--charcoal);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--slate-100);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.megamenu-title i {
    font-size: 0.9rem;
    color: var(--orange);
}
.megamenu-links {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    list-style: none;
    padding: 0;
    margin: 0;
}
.megamenu-links li a {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: var(--slate-600);
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 0.8rem;
    transition: all var(--t3) var(--ease);
}
.megamenu-links li a i {
    font-size: 0.75rem;
    color: var(--slate-400);
    transition: all var(--t3) var(--ease);
}
.megamenu-links li a:hover, .megamenu-links li a.active {
    color: var(--orange);
    padding-left: 5px;
}
.megamenu-links li a:hover i, .megamenu-links li a.active i {
    color: var(--orange);
    transform: scale(1.15);
}

/* Scrolled Sticky Header Adjustments for Megamenu */
.site-header.scrolled .nav-megamenu {
    background: rgba(255, 255, 255, 0.99);
    border-color: rgba(0, 0, 0, 0.08);
    border-top-color: var(--orange);
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
}
.site-header.scrolled .megamenu-title {
    color: var(--charcoal);
    border-bottom-color: var(--slate-100);
}
.site-header.scrolled .megamenu-links li a {
    color: var(--slate-600);
}
.site-header.scrolled .megamenu-links li a i {
    color: var(--slate-400);
}
.site-header.scrolled .megamenu-links li a:hover, .site-header.scrolled .megamenu-links li a.active {
    color: var(--orange);
}
.site-header.scrolled .megamenu-links li a:hover i, .site-header.scrolled .megamenu-links li a.active i {
    color: var(--orange);
}

/* ─── MOBILE NAV DROPDOWN ────────────────────────────────── */
.mobile-nav__item--has-sub {
    border-bottom: 1px solid var(--slate-100);
}
.mobile-nav__item-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.mobile-nav__item-row .mobile-nav__link {
    flex-grow: 1;
    border-bottom: none !important;
}
.mobile-nav__toggle {
    background: var(--slate-100);
    border: none;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--charcoal);
    font-size: 0.9rem;
    transition: all var(--t3) var(--ease);
    margin-right: 0.2rem;
}
.mobile-nav__toggle:hover, .mobile-nav__toggle.active {
    background: var(--orange);
    color: var(--white);
}
.mobile-nav__toggle i {
    transition: transform var(--t3) var(--ease);
}
.mobile-nav__toggle.active i {
    transform: rotate(180deg);
}
.mobile-nav__sub {
    height: 0;
    overflow: hidden;
    transition: height var(--t3) var(--ease);
    background: var(--off-white);
    list-style: none;
    padding: 0;
}
.mobile-nav__sub.open {
    height: auto;
    border-top: 1px solid var(--slate-100);
    padding: 0.5rem 0;
}
.mobile-nav__sub-link {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    padding: 0.75rem 2.2rem;
    color: var(--slate-600);
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all var(--t3) var(--ease);
}
.mobile-nav__sub-link i {
    color: var(--orange);
    font-size: 0.9rem;
    width: 16px;
    text-align: center;
}
.mobile-nav__sub-link:hover, .mobile-nav__sub-link.active {
    color: var(--orange);
    padding-left: 2.6rem;
}


/* ============================================================
   Part 7: Industrial Services Pages CSS
   ============================================================ */

/* ─── SERVICES HERO ──────────────────────────────────────── */
.services-hero {
    position: relative;
    padding: 10rem 0 6rem;
    background: var(--charcoal);
    overflow: hidden;
}
.services-hero::before {
    content: '';
    position: absolute;
    top: -20%;
    left: -10%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.08) 0%, transparent 70%);
    pointer-events: none;
    z-index: 2;
}
.services-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(11,15,26,0.96) 0%, rgba(19,25,41,0.85) 100%);
    z-index: 1;
}
.services-hero .page-container {
    position: relative;
    z-index: 5;
}
.services-hero__content {
    max-width: 850px;
}
.services-hero__label {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    color: var(--orange);
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    margin-bottom: 1.5rem;
}
.services-hero__label::before {
    content: '';
    width: 24px;
    height: 2px;
    background: var(--orange);
}
.services-hero__title {
    font-family: var(--font-display);
    font-size: clamp(2.2rem, 5vw, 4rem);
    font-weight: 800;
    color: var(--white);
    line-height: 1.15;
    margin-bottom: 1.8rem;
}
.services-hero__title span {
    color: var(--orange);
    position: relative;
}
.services-hero__desc {
    font-size: 1.15rem;
    color: var(--slate-200);
    line-height: 1.85;
}

/* ─── SERVICES GRID & CARDS ──────────────────────────────── */
.services-main-section {
    position: relative;
    padding: 6rem 0;
    background: var(--off-white);
}
.services-main-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.2rem;
}
.service-showcard {
    background: var(--white);
    border-radius: var(--radius-sm);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: all var(--t3) var(--ease);
    border: 1px solid var(--slate-200);
    display: flex;
    flex-direction: column;
    position: relative !important;
}
.service-showcard:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
    border-color: rgba(255, 107, 0, 0.3);
}
.service-showcard:active {
    transform: translateY(-3px) scale(0.99);
    box-shadow: var(--shadow-md);
    border-color: var(--orange);
}
.service-showcard__img-container {
    position: relative;
    height: 230px;
    overflow: hidden;
    background: var(--charcoal);
}
.service-showcard__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--t5) var(--ease);
}
.service-showcard:hover .service-showcard__img {
    transform: scale(1.08);
}
.service-showcard__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(11,15,26,0.85) 0%, transparent 100%);
}
.service-showcard__icon {
    position: absolute;
    bottom: 1.5rem;
    left: 1.8rem;
    width: 48px;
    height: 48px;
    background: var(--orange);
    color: var(--white);
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    box-shadow: var(--shadow-orange);
    z-index: 2;
}
.service-showcard__body {
    padding: 2.2rem 1.8rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
.service-showcard__title {
    font-family: var(--font-display);
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 0.8rem;
    transition: color var(--t3) var(--ease);
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.service-showcard:hover .service-showcard__title {
    color: var(--orange);
}
.service-showcard__desc {
    font-size: 0.92rem;
    color: var(--slate-600);
    line-height: 1.65;
    margin-bottom: 1.5rem;
    flex-grow: 1;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.service-showcard__bullets {
    margin-bottom: 1.8rem;
    list-style: none;
    padding: 0;
}
.service-showcard__bullet-item {
    font-size: 0.85rem;
    color: var(--slate-600);
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}
.service-showcard__bullet-item i {
    color: var(--orange);
    font-size: 0.8rem;
}
.service-showcard__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.82rem;
    color: var(--charcoal);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: color var(--t3) var(--ease);
    border-top: 1px solid var(--slate-100);
    padding-top: 1.2rem;
}
.service-showcard__cta::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}
.service-showcard:hover .service-showcard__cta {
    color: var(--orange);
}
.service-showcard__cta i {
    transition: transform var(--t3) var(--ease);
}
.service-showcard:hover .service-showcard__cta i {
    transform: translateX(5px);
}

/* ─── PROCESS FLOW ───────────────────────────────────────── */
.service-process-section {
    position: relative;
    padding: 6rem 0;
    background: var(--white);
    overflow: hidden;
}
.process-flow-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    margin-top: 4rem;
    gap: 2rem;
}
.process-flow-container::before {
    content: '';
    position: absolute;
    top: 35px;
    left: 40px;
    right: 40px;
    height: 2px;
    background: repeating-linear-gradient(90deg, var(--slate-200) 0px, var(--slate-200) 10px, transparent 10px, transparent 20px);
    z-index: 1;
}
.process-node {
    flex: 1;
    text-align: center;
    position: relative;
    z-index: 2;
}
.process-node__step {
    width: 72px;
    height: 72px;
    background: var(--white);
    border: 3px solid var(--slate-200);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 1.3rem;
    color: var(--slate-400);
    transition: all var(--t3) var(--ease);
    box-shadow: var(--shadow-sm);
    margin-bottom: 1.5rem;
}
.process-node:hover .process-node__step {
    border-color: var(--orange);
    color: var(--orange);
    transform: scale(1.08);
    box-shadow: var(--shadow-orange);
}
.process-node__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 0.6rem;
}
.process-node__desc {
    font-size: 0.85rem;
    color: var(--slate-600);
    line-height: 1.6;
    max-width: 220px;
    margin: 0 auto;
}

/* ─── DETAILED SERVICE PAGES SPECIFICS ────────────────────── */
.service-detail-hero {
    position: relative;
    padding: 11rem 0 7rem;
    background: var(--charcoal);
    overflow: hidden;
}
.service-detail-hero::before {
    content: '';
    position: absolute;
    top: -20%;
    left: -10%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.08) 0%, transparent 70%);
    pointer-events: none;
    z-index: 2;
}
.service-detail-hero .page-container {
    position: relative;
    z-index: 5;
}
.sd-hero-grid {
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 4rem;
    align-items: center;
}
.sd-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(255, 107, 0, 0.12);
    border: 1px solid rgba(255, 107, 0, 0.3);
    color: var(--orange);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 0.4rem 1rem;
    border-radius: var(--radius-sm);
    margin-bottom: 1.8rem;
}
.sd-hero-title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4vw, 3.5rem);
    font-weight: 800;
    color: var(--white);
    line-height: 1.15;
    margin-bottom: 1.5rem;
}
.sd-hero-desc {
    font-size: 1.1rem;
    color: var(--slate-200);
    line-height: 1.8;
}
.sd-hero-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    border-left: 2px solid rgba(255, 255, 255, 0.08);
    padding-left: 2.2rem;
}
.sd-stat-box {
    display: flex;
    flex-direction: column;
}
.sd-stat-num {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 800;
    color: var(--orange);
    line-height: 1;
    margin-bottom: 0.5rem;
}
.sd-stat-label {
    font-size: 0.8rem;
    color: var(--slate-200);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
}

/* ─── DETAILED SERVICE SPLIT LAYOUT ──────────────────────── */
.service-detail-section {
    position: relative;
    padding: 6rem 0;
    background: var(--off-white);
}
.service-detail-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 3.5rem;
    align-items: start;
}
.service-content-body {
    background: var(--white);
    border-radius: var(--radius-sm);
    padding: 3.5rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--slate-200);
}
.service-content-body h2 {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--charcoal);
    margin: 2.5rem 0 1.2rem;
}
.service-content-body h2:first-child {
    margin-top: 0;
}
.service-content-body p {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--slate-600);
    margin-bottom: 1.5rem;
}
.service-content-body p strong {
    color: var(--charcoal);
}
.service-content-body ul {
    margin-bottom: 2rem;
}
.service-content-body ul li {
    position: relative;
    padding-left: 1.8rem;
    margin-bottom: 0.8rem;
    font-size: 0.95rem;
    color: var(--slate-600);
    line-height: 1.6;
}
.service-content-body ul li::before {
    content: '\f00c';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--orange);
    font-size: 0.85rem;
}

/* Technical Specification Table */
.tech-spec-table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: 0.9rem;
}
.tech-spec-table th, .tech-spec-table td {
    padding: 1rem 1.2rem;
    text-align: left;
    border-bottom: 1px solid var(--slate-200);
}
.tech-spec-table th {
    background: var(--slate-100);
    color: var(--charcoal);
    font-family: var(--font-display);
    font-weight: 800;
}
.tech-spec-table tr:hover {
    background: var(--off-white);
}

/* Service Detail Sidebar */
.service-sidebar {
    position: sticky;
    top: 100px;
    display: flex;
    flex-direction: column;
    gap: 2.2rem;
}
.sidebar-widget {
    background: var(--white);
    border-radius: var(--radius-sm);
    padding: 2.2rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--slate-200);
}
.sidebar-widget.sidebar-widget--orange {
    background: var(--charcoal) !important;
    border-color: rgba(255, 107, 0, 0.3) !important;
    color: var(--white) !important;
    background-image: linear-gradient(135deg, var(--charcoal) 0%, rgba(255, 107, 0, 0.08) 100%) !important;
}
.sidebar-widget.sidebar-widget--orange ul li a {
    color: #ffffff !important;
    font-weight: 700 !important;
    transition: color var(--t3) var(--ease) !important;
}
.sidebar-widget.sidebar-widget--orange ul li a:hover {
    color: var(--orange) !important;
}
.sidebar-widget.sidebar-widget--orange ul li a:active {
    color: var(--orange-dark) !important;
}
.widget-title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 1.4rem;
    padding-bottom: 0.8rem;
    border-bottom: 2px solid var(--slate-100);
}
.sidebar-widget.sidebar-widget--orange .widget-title {
    color: var(--white) !important;
    border-bottom: 2px solid rgba(255,255,255,0.08) !important;
    border-left: none !important;
    padding-left: 0 !important;
    font-size: 1.2rem !important;
    font-weight: 800 !important;
}
.sidebar-links-list {
    list-style: none;
    padding: 0;
}
.sidebar-link-item {
    margin-bottom: 0.6rem;
}
.sidebar-link-item a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1.2rem;
    background: var(--off-white);
    border-radius: var(--radius-sm);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.82rem;
    color: var(--charcoal);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: all var(--t3) var(--ease);
}
.sidebar-link-item.active a, .sidebar-link-item a:hover {
    background: var(--orange);
    color: var(--white);
}
.sidebar-link-item a i {
    font-size: 0.85rem;
}


/* ============================================================
   Part 8: Responsive Services Layouts
   ============================================================ */
@media (max-width: 1200px) {
    .services-main-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
    .service-detail-layout {
        grid-template-columns: 1fr;
        gap: 3.5rem;
    }
    .service-sidebar {
        position: relative;
        top: 0;
    }
    .sd-hero-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .sd-hero-stats {
        border-left: none;
        padding-left: 0;
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .services-main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    .process-flow-container {
        flex-direction: column;
        align-items: center;
        gap: 3rem;
    }
    .process-flow-container::before {
        display: none;
    }
    .process-node__desc {
        max-width: 100%;
    }
    .sd-hero-stats {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    .service-content-body {
        padding: 2.2rem 1.5rem;
    }
    .tech-spec-table th, .tech-spec-table td {
        padding: 0.8rem 0.6rem;
        font-size: 0.8rem;
    }
}

/* ─── INDUSTRIES PAGE STYLING (CINEMATIC B2B) ──────────────── */
.ind-hero {
    position: relative;
    padding: 12rem 0 8rem;
    background: var(--charcoal);
    overflow: hidden;
}
.ind-hero::before {
    content: '';
    position: absolute;
    top: -20%;
    left: -10%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 107, 0, 0.08) 0%, transparent 70%);
    pointer-events: none;
    z-index: 2;
}
.ind-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(11,15,26,0.96) 0%, rgba(19,25,41,0.85) 100%);
    z-index: 1;
}
.ind-hero .page-container {
    position: relative;
    z-index: 5;
}
.ind-hero-layout {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 4rem;
    align-items: center;
}
.ind-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(255, 107, 0, 0.12);
    border: 1px solid rgba(255, 107, 0, 0.3);
    color: var(--orange);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 0.4rem 1rem;
    border-radius: var(--radius-sm);
    margin-bottom: 1.8rem;
}
.ind-hero__title {
    font-family: var(--font-display);
    font-size: clamp(2.2rem, 5vw, 3.8rem);
    font-weight: 800;
    color: var(--white);
    line-height: 1.15;
    margin-bottom: 1.8rem;
}
.ind-hero__title span {
    color: var(--orange);
}
.ind-hero__desc {
    font-size: 1.15rem;
    color: var(--slate-200);
    line-height: 1.85;
    margin-bottom: 2.5rem;
    max-width: 750px;
}
.ind-hero__ctas {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
}
.ind-hero__ctas .btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: var(--orange);
    color: var(--white);
    font-weight: 700;
    padding: 1rem 2.2rem;
    border-radius: var(--radius-sm);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 107, 0, 0.3);
}
.ind-hero__ctas .btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 107, 0, 0.5);
}
.ind-hero__ctas .btn-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: #25d366;
    color: var(--white);
    font-weight: 700;
    padding: 1rem 2.2rem;
    border-radius: var(--radius-sm);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.3);
}
.ind-hero__ctas .btn-whatsapp:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.5);
}

/* Blueprint Visual Frame */
.ind-hero__visual {
    position: relative;
}
.ind-hero__glow-sphere {
    position: absolute;
    inset: -20px;
    background: radial-gradient(circle, rgba(255,107,0,0.15) 0%, transparent 70%);
    z-index: 1;
    pointer-events: none;
}
.ind-hero__blueprint-box {
    position: relative;
    border: 1px solid rgba(255, 107, 0, 0.25);
    border-radius: var(--radius-md);
    background: rgba(11, 15, 26, 0.85);
    backdrop-filter: blur(10px);
    padding: 1.5rem;
    z-index: 2;
    overflow: hidden;
    aspect-ratio: 4/3;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), inset 0 0 40px rgba(255, 107, 0, 0.05);
}

/* Tech Grid Pattern overlay */
.blueprint-tech-grid {
    position: absolute;
    inset: 0;
    background-size: 20px 20px;
    background-image: 
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    pointer-events: none;
    z-index: 1;
}

/* Blueprint laser scan effect */
.blueprint-laser-scanner {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--orange), transparent);
    box-shadow: 0 0 15px var(--orange), 0 0 5px var(--orange);
    z-index: 6;
    pointer-events: none;
    animation: blueprintScan 5s infinite linear;
}

@keyframes blueprintScan {
    0% { top: 0%; opacity: 0; }
    5% { opacity: 1; }
    95% { opacity: 1; }
    100% { top: 100%; opacity: 0; }
}

/* Caliper dimension markup */
.blueprint-caliper {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    pointer-events: none;
}
.blueprint-caliper--horiz {
    top: 5%;
    left: 10%;
    width: 80%;
    height: 20px;
    border-left: 1px solid rgba(255, 107, 0, 0.4);
    border-right: 1px solid rgba(255, 107, 0, 0.4);
}
.blueprint-caliper--horiz::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background: rgba(255, 107, 0, 0.4);
}
.blueprint-caliper--vert {
    left: 5%;
    top: 15%;
    height: 70%;
    width: 20px;
    border-top: 1px solid rgba(255, 107, 0, 0.4);
    border-bottom: 1px solid rgba(255, 107, 0, 0.4);
}
.blueprint-caliper--vert::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 1px;
    background: rgba(255, 107, 0, 0.4);
}
.blueprint-caliper__label {
    background: #0b0f1a;
    padding: 0.1rem 0.5rem;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.65rem;
    color: var(--orange);
    letter-spacing: 0.05em;
    border: 1px solid rgba(255, 107, 0, 0.3);
    border-radius: 2px;
    position: relative;
    z-index: 2;
}

.blueprint-line {
    position: absolute;
    background: rgba(255, 107, 0, 0.15);
}
.blueprint-line--1 {
    top: 20%; left: 0; right: 0; height: 1px;
}
.blueprint-line--2 {
    bottom: 20%; left: 0; right: 0; height: 1px;
}
.blueprint-line--3 {
    top: 0; bottom: 0; left: 50%; width: 1px;
}
.blueprint-node {
    position: absolute;
    background: rgba(255, 107, 0, 0.2);
    border: 1px solid var(--orange);
    border-radius: 50%;
    width: 12px;
    height: 12px;
    z-index: 5;
}
.blueprint-node--1 {
    top: 20%; left: 50%; transform: translate(-50%, -50%);
}
.blueprint-node--2 {
    bottom: 20%; left: 50%; transform: translate(-50%, 50%);
}
.blueprint-label {
    position: absolute;
    white-space: nowrap;
    font-size: 0.6rem;
    font-weight: 700;
    color: var(--orange);
    letter-spacing: 0.1em;
    background: var(--charcoal);
    padding: 0.2rem 0.5rem;
    border: 1px solid rgba(255, 107, 0, 0.3);
    border-radius: 2px;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}

/* Featured Crane Image styling inside blueprint box */
.ind-hero__blueprint-img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-sm);
    filter: saturate(0.2) contrast(1.1) brightness(0.7);
    mix-blend-mode: luminosity;
    transition: transform 0.6s ease;
}
.blueprint-img-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle, transparent 20%, rgba(11, 15, 26, 0.95) 90%), linear-gradient(180deg, rgba(11, 15, 26, 0.3), rgba(11, 15, 26, 0.8));
    z-index: 3;
    pointer-events: none;
}

/* Pulsing Hotspots with tooltips */
.blueprint-hotspot {
    position: absolute;
    width: 16px;
    height: 16px;
    z-index: 5;
    cursor: pointer;
}
.blueprint-hotspot__pulse {
    position: absolute;
    width: 32px;
    height: 32px;
    left: -8px;
    top: -8px;
    background: rgba(255, 107, 0, 0.4);
    border-radius: 50%;
    animation: hotspotPulse 2s infinite ease-out;
}
.blueprint-hotspot__dot {
    position: absolute;
    width: 10px;
    height: 10px;
    left: 3px;
    top: 3px;
    background: var(--orange);
    border: 2px solid var(--white);
    border-radius: 50%;
    box-shadow: 0 0 10px var(--orange);
}
.blueprint-hotspot__tooltip {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%) translateY(5px);
    background: rgba(11, 15, 26, 0.95);
    border: 1px solid rgba(255, 107, 0, 0.5);
    color: var(--white);
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
    padding: 0.4rem 0.8rem;
    border-radius: var(--radius-sm);
    box-shadow: 0 5px 15px rgba(0,0,0,0.5);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
}
.blueprint-hotspot:hover .blueprint-hotspot__tooltip {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

@keyframes hotspotPulse {
    0% { transform: scale(0.5); opacity: 1; }
    100% { transform: scale(1.5); opacity: 0; }
}

.ind-hero__blueprint-box:hover .ind-hero__blueprint-img {
    transform: scale(1.05);
}

/* ─── SECTORS OVERVIEW SECTION ──────────────────────────────── */
.ind-overview-section {
    position: relative;
    padding: 6rem 0;
    background: var(--off-white);
}
.ind-overview-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.2rem;
}
.ind-sector-card {
    position: relative;
    background: var(--white);
    border-radius: var(--radius-md);
    padding: 3rem 2.5rem;
    border: 1px solid var(--slate-200);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), 
                box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.ind-sector-card__glow {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 0% 0%, rgba(255, 107, 0, 0.08) 0%, transparent 60%);
    opacity: 0;
    transition: opacity 0.4s ease;
}
.ind-sector-card__icon {
    font-size: 2.5rem;
    color: var(--orange);
    margin-bottom: 2rem;
    transition: transform 0.4s ease;
}
.ind-sector-card__title {
    font-family: var(--font-display);
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--charcoal);
    margin-bottom: 1.2rem;
}
.ind-sector-card__desc {
    font-size: 0.95rem;
    color: var(--slate-600);
    line-height: 1.7;
    margin-bottom: 2rem;
}
.ind-sector-card__tag {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--orange);
    background: rgba(255, 107, 0, 0.08);
    padding: 0.3rem 0.8rem;
    border-radius: var(--radius-sm);
}
.ind-sector-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-md);
    border-color: rgba(255, 107, 0, 0.3);
}
.ind-sector-card:hover .ind-sector-card__glow {
    opacity: 1;
}
.ind-sector-card:hover .ind-sector-card__icon {
    transform: scale(1.1) rotate(5deg);
}

/* ─── DYNAMIC INDUSTRY BLOCK ────────────────────────────────── */
.ind-detail-section {
    position: relative;
    padding: 6rem 0;
    background: var(--white);
}
.ind-detail-block {
    position: relative;
    margin-bottom: 7rem;
}
.ind-detail-block:last-child {
    margin-bottom: 0;
}
.ind-detail-layout {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 5rem;
    align-items: center;
}
.ind-detail-block--reversed .ind-detail-layout {
    grid-template-columns: 0.9fr 1.1fr;
}
.ind-detail-block--reversed .ind-detail-content {
    grid-column: 2;
}
.ind-detail-block--reversed .ind-detail-visual {
    grid-column: 1;
    grid-row: 1;
}
.ind-detail__badge {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--orange);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 1.2rem;
}
.ind-detail__title {
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    font-weight: 800;
    color: var(--charcoal);
    line-height: 1.25;
    margin-bottom: 1.5rem;
}
.ind-detail__desc {
    font-size: 1rem;
    color: var(--slate-600);
    line-height: 1.8;
    margin-bottom: 2.2rem;
}
.ind-detail__features {
    display: flex;
    flex-direction: column;
    gap: 1.8rem;
    margin-bottom: 2.5rem;
}
.ind-feature-item {
    display: flex;
    gap: 1.2rem;
}
.ind-feature-item i {
    font-size: 1.5rem;
    color: var(--orange);
    margin-top: 0.2rem;
}
.ind-feature-item h4 {
    font-family: var(--font-display);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--charcoal);
    margin-bottom: 0.4rem;
}
.ind-feature-item p {
    font-size: 0.92rem;
    color: var(--slate-600);
    line-height: 1.6;
}
.ind-detail__meta-specs {
    border-top: 1px solid var(--slate-200);
    padding-top: 1.5rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    font-size: 0.9rem;
    color: var(--slate-600);
}
.ind-detail__meta-specs strong {
    color: var(--charcoal);
}
.ind-detail__cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    color: var(--orange);
    font-weight: 700;
    font-size: 0.95rem;
    border-bottom: 2px solid transparent;
    padding-bottom: 0.3rem;
    transition: border-color 0.3s ease, gap 0.3s ease;
}
.ind-detail__cta-btn:hover {
    border-color: var(--orange);
    gap: 1.2rem;
}

/* Detail Visual */
.ind-detail__image-box {
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-md);
}
.ind-detail__img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: transform 0.6s ease;
}
.ind-detail__image-tag {
    position: absolute;
    bottom: 1.8rem;
    right: 1.8rem;
    background: rgba(11, 15, 26, 0.85);
    backdrop-filter: blur(8px);
    color: var(--white);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.5rem 1rem;
    border-radius: var(--radius-sm);
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.ind-detail__image-box:hover .ind-detail__img {
    transform: scale(1.05);
}

/* ─── TRUST REPUTATION SECTION ──────────────────────────────── */
.ind-trust-section {
    position: relative;
    padding: 6.5rem 0;
    background: var(--charcoal);
    overflow: hidden;
}
.ind-trust-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
}
.ind-trust-card {
    position: relative;
    background: rgba(11, 15, 26, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: var(--radius-md);
    padding: 3rem 2.5rem;
    transition: border-color 0.3s ease, transform 0.3s ease;
}
.ind-trust-card__icon {
    font-size: 2.2rem;
    color: var(--orange);
    display: block;
    margin-bottom: 1.8rem;
}
.ind-trust-card__title {
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--white);
    margin-bottom: 1rem;
}
.ind-trust-card__desc {
    font-size: 0.95rem;
    color: var(--slate-300);
    line-height: 1.7;
}
.ind-trust-card:hover {
    border-color: rgba(255, 107, 0, 0.3);
    transform: translateY(-5px);
}

/* ─── PROCESS TIMELINE FLOW ─────────────────────────────────── */
.ind-process-section {
    position: relative;
    padding: 6rem 0;
    background: var(--off-white);
}

/* ─── HIGH IMPACT B2B CTA BANNER ────────────────────────────── */
.ind-cta-section {
    position: relative;
    padding: 6.5rem 0;
    background: var(--charcoal);
    overflow: hidden;
}
.ind-cta-box {
    position: relative;
    background: rgba(11, 15, 26, 0.75);
    border: 1px solid rgba(255, 107, 0, 0.2);
    border-radius: var(--radius-md);
    padding: 4.5rem;
    text-align: center;
    z-index: 5;
    overflow: hidden;
}
.ind-cta__glow {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 50%, rgba(255,107,0,0.1) 0%, transparent 60%);
    pointer-events: none;
}
.ind-cta__title {
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 800;
    color: var(--white);
    line-height: 1.2;
    margin-bottom: 1.5rem;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.ind-cta__desc {
    font-size: 1.1rem;
    color: var(--slate-300);
    line-height: 1.8;
    margin-bottom: 2.8rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.ind-cta__buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.5rem;
}
.ind-cta__buttons .btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: var(--orange);
    color: var(--white);
    font-weight: 700;
    padding: 1rem 2.2rem;
    border-radius: var(--radius-sm);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 107, 0, 0.3);
}
.ind-cta__buttons .btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 107, 0, 0.5);
}
.ind-cta__buttons .btn-phone {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.15);
    color: var(--white);
    font-weight: 700;
    padding: 1rem 2.2rem;
    border-radius: var(--radius-sm);
    transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}
.ind-cta__buttons .btn-phone:hover {
    transform: translateY(-2px);
    border-color: var(--orange);
    background: rgba(255, 107, 0, 0.1);
}

/* ─── RESPONSIVE OVERRIDES FOR INDUSTRIES ─────────────────── */
@media (max-width: 1024px) {
    .ind-hero-layout {
        grid-template-columns: 1fr;
        gap: 3.5rem;
        text-align: center;
    }
    .ind-hero__ctas {
        justify-content: center;
    }
    .ind-hero__visual {
        max-width: 600px;
        margin: 0 auto;
    }
    .ind-overview-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .ind-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .ind-detail-layout, .ind-detail-block--reversed .ind-detail-layout {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .ind-detail-block--reversed .ind-detail-content {
        grid-column: 1;
    }
    .ind-detail-block--reversed .ind-detail-visual {
        grid-column: 1;
    }
}

@media (max-width: 768px) {
    .ind-overview-grid {
        grid-template-columns: 1fr;
        gap: 1.8rem;
    }
    .ind-trust-grid {
        grid-template-columns: 1fr;
        gap: 1.8rem;
    }
    .ind-cta-box {
        padding: 3rem 1.8rem;
    }
}

/* Service Detail Featured Image */
.service-featured-image-box {
    position: relative;
    width: 100%;
    height: 400px;
    border-radius: var(--radius-md);
    overflow: hidden;
    margin-bottom: 2.5rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--slate-200);
}
.service-featured-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}
.service-featured-image-box:hover .service-featured-img {
    transform: scale(1.03);
}
.service-featured-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(11, 15, 26, 0.4) 0%, transparent 60%);
    pointer-events: none;
}

@media (max-width: 768px) {
    .service-featured-image-box {
        height: 250px;
        margin-bottom: 1.8rem;
    }
}

/* ─── GENERAL FAQ & SECTION HEADER UTILITIES ────────────────── */
.faq-section {
    padding: 8rem 0;
    position: relative;
}
.faq-grid {
    max-width: 900px;
    margin: 4rem auto 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.section-header--center {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 4rem;
}
.section-header--center .section-label {
    justify-content: center;
}

/* ────────────────────────────────────────────────────────────
   BLOG LISTING & DETAILS STYLING (SKILL.md)
   ──────────────────────────────────────────────────────────── */

.blog-page-wrapper {
    position: relative;
    overflow: hidden;
}

/* Blog Hero */
.blog-hero {
    position: relative;
    padding: 10rem 0 7rem;
    background: #0b0f1a;
    text-align: center;
    color: var(--white);
    overflow: hidden;
}
.blog-hero__content {
    position: relative;
    z-index: 5;
    max-width: 800px;
    margin: 0 auto;
}

/* Filter Bar & Pills */
.blog-filter-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2.5rem;
    border-bottom: 1px solid var(--slate-100);
    padding-bottom: 1.5rem;
}
.category-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
}
.category-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1.2rem;
    background: var(--off-white);
    color: var(--charcoal);
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 50px;
    border: 1px solid var(--slate-200);
    transition: all var(--t3) var(--ease);
}
.category-pill:hover, .category-pill.active {
    background: var(--orange);
    color: var(--white);
    border-color: var(--orange);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(255, 107, 0, 0.2);
}
.pill-count {
    font-size: 0.75rem;
    padding: 0.1rem 0.4rem;
    background: rgba(0,0,0,0.06);
    border-radius: 10px;
}
.category-pill.active .pill-count {
    background: rgba(255,255,255,0.2);
}

.active-filter-alert {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(255, 107, 0, 0.08);
    border: 1px solid rgba(255, 107, 0, 0.15);
    color: var(--charcoal);
    padding: 0.8rem 1.2rem;
    border-radius: var(--radius-sm);
    margin-bottom: 2rem;
    font-size: 0.9rem;
}
.clear-filter-btn {
    color: var(--orange);
    font-weight: 700;
    text-decoration: none;
}

/* Blog Layout Grid */
.blog-layout {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 3.5rem;
    padding: 4rem 0;
}
.blog-content-col {
    min-width: 0;
}
.blog-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2rem;
    margin-bottom: 3.5rem;
}

/* Blog Card */
.blog-card {
    background: var(--white);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.04);
    border: 1px solid var(--slate-100);
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: all var(--t3) var(--ease);
    position: relative !important;
}
.blog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(0,0,0,0.09);
    border-color: rgba(255, 107, 0, 0.2);
}
.blog-card:active {
    transform: translateY(-2px) scale(0.99);
    box-shadow: 0 8px 24px rgba(0,0,0,0.06);
    border-color: var(--orange);
}
.blog-card__image-wrap {
    position: relative;
    height: 230px;
    overflow: hidden;
}
.blog-card__image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--t5) var(--ease);
}
.blog-card:hover .blog-card__image-wrap img {
    transform: scale(1.05);
}
.blog-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(11,15,26,0.3) 0%, transparent 60%);
}
.blog-card__category {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: var(--orange);
    color: var(--white);
    padding: 0.35rem 0.9rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 4px;
    box-shadow: 0 4px 10px rgba(255, 107, 0, 0.3);
}
.blog-card__content {
    padding: 1.8rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.blog-card__meta {
    display: flex;
    gap: 1.2rem;
    font-size: 0.8rem;
    color: var(--slate-500);
    margin-bottom: 0.8rem;
}
.blog-card__meta i {
    color: var(--orange);
    margin-right: 4px;
}
.blog-card__title {
    font-size: 1.25rem;
    line-height: 1.4;
    font-weight: 700;
    margin-bottom: 0.8rem;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.blog-card__title a {
    color: var(--charcoal);
    text-decoration: none;
    transition: color var(--t3) var(--ease);
}
.blog-card__title a:hover {
    color: var(--orange);
}
.blog-card__desc {
    color: var(--slate-600);
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 1.5rem;
    flex-grow: 1;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.blog-card__link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--charcoal);
    font-weight: 700;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    transition: color var(--t3) var(--ease);
    margin-top: auto;
}
.blog-card__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}
.blog-card__link i {
    transition: transform var(--t3) var(--ease);
}
.blog-card:hover .blog-card__link {
    color: var(--orange);
}
.blog-card:hover .blog-card__link i {
    transform: translateX(5px);
}

/* Pagination Styles */
.blog-pagination-wrapper {
    display: flex;
    justify-content: center;
    margin-top: 4rem;
}
.blog-pagination-wrapper .pagination {
    display: flex;
    gap: 0.4rem;
    list-style: none;
    padding: 0;
    margin: 0;
}
.blog-pagination-wrapper .page-item .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--white);
    border: 1px solid var(--slate-200);
    color: var(--charcoal);
    font-weight: 700;
    text-decoration: none;
    transition: all var(--t3) var(--ease);
}
.blog-pagination-wrapper .page-item .page-link:hover {
    border-color: var(--orange);
    color: var(--orange);
    background: var(--off-white);
}
.blog-pagination-wrapper .page-item.active .page-link {
    background: var(--orange);
    color: var(--white);
    border-color: var(--orange);
    box-shadow: 0 4px 12px rgba(255,107,0,0.25);
}
.blog-pagination-wrapper .page-item.disabled .page-link {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

/* No posts found */
.no-posts-found {
    text-align: center;
    padding: 5rem 2rem;
    background: var(--off-white);
    border-radius: var(--radius-md);
    border: 1px dashed var(--slate-300);
}
.no-posts-found i {
    font-size: 3rem;
    color: var(--slate-400);
    margin-bottom: 1.5rem;
}
.no-posts-found h3 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}
.no-posts-found p {
    color: var(--slate-600);
    margin-bottom: 2rem;
}

/* Sidebar Widgets */
.blog-sidebar {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}
.sidebar-widget {
    background: var(--white);
    border-radius: var(--radius-md);
    border: 1px solid var(--slate-100);
    padding: 1.8rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
}
.widget-title {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
    border-left: 3px solid var(--orange);
    padding-left: 0.8rem;
}
.search-input-group {
    display: flex;
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-sm);
    overflow: hidden;
}
.search-input-group input {
    flex-grow: 1;
    border: none;
    padding: 0.8rem 1rem;
    font-size: 0.9rem;
    outline: none;
}
.search-input-group button {
    background: var(--orange);
    color: var(--white);
    border: none;
    padding: 0 1.2rem;
    cursor: pointer;
    transition: background var(--t3) var(--ease);
}
.search-input-group button:hover {
    background: #e05e00;
}
.search-clear-link {
    display: inline-block;
    margin-top: 0.5rem;
    font-size: 0.8rem;
    color: var(--slate-500);
    text-decoration: none;
}

/* Recent Posts Widget */
.recent-posts-list {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}
.recent-post-item {
    display: flex;
    gap: 1rem;
    align-items: center;
}
.recent-post-item__img {
    flex-shrink: 0;
    width: 65px;
    height: 65px;
    border-radius: var(--radius-sm);
    overflow: hidden;
    border: 1px solid var(--slate-100);
}
.recent-post-item__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.recent-post-item__info {
    min-width: 0;
}
.recent-post-item__date {
    display: block;
    font-size: 0.75rem;
    color: var(--slate-400);
    margin-bottom: 0.2rem;
}
.recent-post-item__title {
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.recent-post-item__title a {
    color: var(--charcoal);
    text-decoration: none;
    transition: color var(--t3) var(--ease);
}
.recent-post-item__title a:hover {
    color: var(--orange);
}

/* Sidebar CTA Widget */
.sidebar-cta-widget {
    background: #0b0f1a;
    color: var(--white);
    position: relative;
    overflow: hidden;
    border: none;
}
.sidebar-cta__overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 10% 20%, rgba(255, 107, 0, 0.15) 0%, transparent 60%);
    pointer-events: none;
}
.sidebar-cta__content {
    position: relative;
    z-index: 5;
}
.sidebar-cta__label {
    display: inline-block;
    color: var(--orange);
    font-weight: 700;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.8rem;
}
.sidebar-cta-widget h3 {
    font-size: 1.35rem;
    line-height: 1.3;
    margin-bottom: 0.8rem;
    font-weight: 700;
}
.sidebar-cta-widget p {
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--text-light-body);
    margin-bottom: 1.8rem;
}
.sidebar-cta-widget .btn-orange {
    margin-bottom: 0.6rem;
}
.btn-whatsapp {
    background: #25d366;
    color: var(--white);
    border: none;
    font-weight: 700;
}
.btn-whatsapp:hover {
    background: #20ba5a;
    color: var(--white);
    transform: translateY(-2px);
}

/* ────────────────────────────────────────────────────────────
   BLOG DETAILS PAGE STYLING
   ──────────────────────────────────────────────────────────── */

/* Blog Details Hero */
.blog-details-hero {
    position: relative;
    padding: 11rem 0 6rem;
    color: var(--white);
    background: #0b0f1a;
    overflow: hidden;
}
.blog-details-hero__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0.25;
    filter: blur(2px);
}
.blog-details-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(11,15,26,0.85) 0%, #0b0f1a 100%);
}
.blog-details-hero__content {
    position: relative;
    z-index: 5;
    max-width: 900px;
    margin-top: 1.5rem;
}
.blog-details-hero__category {
    display: inline-block;
    background: var(--orange);
    color: var(--white);
    padding: 0.35rem 1rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 4px;
    margin-bottom: 1.2rem;
    box-shadow: 0 4px 10px rgba(255, 107, 0, 0.35);
}
.blog-details-hero__title {
    font-size: 2.5rem;
    line-height: 1.25;
    font-weight: 800;
    margin-bottom: 1.8rem;
    letter-spacing: -0.01em;
    word-wrap: break-word !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}
.blog-details-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.2rem;
    font-size: 0.9rem;
    color: var(--text-light-body);
}
.meta-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}
.meta-author-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.2);
    background: rgba(255,255,255,0.1);
}
.meta-divider {
    color: rgba(255,255,255,0.15);
}

/* Breadcrumbs */
.blog-breadcrumbs {
    position: relative;
    z-index: 5;
}
.breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.8rem;
    gap: 0.5rem;
}
.breadcrumb-item {
    color: rgba(255,255,255,0.6);
}
.breadcrumb-item a {
    color: rgba(255,255,255,0.85);
    text-decoration: none;
    transition: color var(--t3) var(--ease);
}
.breadcrumb-item a:hover {
    color: var(--orange);
}
.breadcrumb-item::after {
    content: '/';
    margin-left: 0.5rem;
    color: rgba(255,255,255,0.3);
}
.breadcrumb-item:last-child::after {
    display: none;
}
.breadcrumb-item.active {
    color: var(--orange);
    font-weight: 600;
}

/* Layout */
.blog-details-layout {
    display: flex;
    flex-direction: column;
    gap: 3rem;
    padding: 4.5rem 0;
}
@media (min-width: 992px) {
    .blog-details-layout {
        display: grid;
        grid-template-columns: 1fr 360px;
        gap: 3.5rem;
    }
}
.blog-article-featured-img {
    width: 100%;
    border-radius: var(--radius-md);
    overflow: hidden;
    margin-bottom: 2.5rem;
    box-shadow: var(--shadow-sm);
}
.blog-article-featured-img img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    max-height: 480px;
}
.blog-details-right-sidebar {
    position: relative;
}
@media (min-width: 992px) {
    .blog-details-right-sidebar {
        position: sticky;
        top: 100px;
        align-self: start;
    }
}
.blog-details-right-sidebar .sidebar-widget {
    background: var(--white);
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-md);
    padding: 1.8rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.02);
}
.blog-details-right-sidebar .widget-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--charcoal);
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--slate-100);
    padding-bottom: 0.8rem;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}
.blog-details-right-sidebar .widget-title i {
    color: var(--orange);
}
.blog-details-right-sidebar .widget-desc {
    font-size: 0.85rem;
    color: var(--slate-500);
    margin-bottom: 1.2rem;
    line-height: 1.45;
}
.blog-details-rfq-widget {
    position: relative;
}
.blog-details-sidebar {
    position: relative;
}
.toc-sidebar-widget {
    position: sticky;
    top: 100px;
    background: rgba(255,255,255,0.9);
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-md);
    padding: 1.8rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
    backdrop-filter: blur(10px);
}
.toc-widget-title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
    color: var(--charcoal);
    border-bottom: 1px solid var(--slate-100);
    padding-bottom: 0.8rem;
}
.toc-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}
.toc-link {
    display: block;
    color: var(--slate-600);
    text-decoration: none;
    font-size: 0.85rem;
    line-height: 1.4;
    transition: all var(--t3) var(--ease);
    border-left: 2px solid transparent;
    padding-left: 0.8rem;
}
.toc-link:hover, .toc-link.active {
    color: var(--orange);
    border-left-color: var(--orange);
    padding-left: 1rem;
    font-weight: 600;
}

/* Rich Content Styling */
.blog-details-content-col {
    width: 100%;
    max-width: 960px;
    min-width: 0;
}
.blog-article {
    background: var(--white);
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-md);
    padding: 1.5rem;
    box-shadow: 0 4px 24px rgba(0,0,0,0.02);
}
@media (min-width: 768px) {
    .blog-article {
        padding: 3.5rem;
    }
}
.blog-lead-text {
    font-size: 1.2rem;
    line-height: 1.6;
    color: var(--charcoal);
    font-weight: 500;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--slate-100);
    padding-bottom: 1.8rem;
}
.blog-rich-content {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--slate-700);
}
.blog-rich-content p {
    margin-bottom: 1.5rem;
}
.blog-rich-content h2 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--charcoal);
    margin: 2.8rem 0 1.2rem;
    letter-spacing: -0.01em;
}
.blog-rich-content h3 {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--charcoal);
    margin: 2rem 0 1rem;
}
.blog-rich-content ul, .blog-rich-content ol {
    margin-bottom: 1.8rem;
    padding-left: 1.5rem;
}
.blog-rich-content li {
    margin-bottom: 0.6rem;
}
.blog-rich-content blockquote {
    margin: 2.5rem 0;
    padding: 1.5rem 2rem;
    background: var(--off-white);
    border-left: 4px solid var(--orange);
    font-style: italic;
    font-size: 1.15rem;
    color: var(--charcoal);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.blog-rich-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 2.2rem 0;
    font-size: 0.95rem;
}
.blog-rich-content th, .blog-rich-content td {
    padding: 0.8rem 1.2rem;
    border: 1px solid var(--slate-200);
    text-align: left;
}
.blog-rich-content th {
    background: var(--off-white);
    font-weight: 700;
    color: var(--charcoal);
}
.blog-rich-content tr:nth-child(even) {
    background: rgba(0,0,0,0.01);
}
.blog-rich-content img {
    max-width: 100%;
    height: auto;
    border-radius: var(--radius-md);
    margin: 2.2rem auto;
    display: block;
    box-shadow: var(--shadow-sm);
}

/* Inline CTA Module */
.blog-inline-cta {
    position: relative;
    background: #0b0f1a;
    color: var(--white);
    border-radius: var(--radius-md);
    padding: 2.5rem;
    margin: 3.5rem 0;
    overflow: hidden;
}
.blog-inline-cta__glow {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 90% 80%, rgba(255, 107, 0, 0.18) 0%, transparent 60%);
    pointer-events: none;
}
.blog-inline-cta__content {
    position: relative;
    z-index: 5;
}
.blog-inline-cta__content h3 {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 0.8rem;
}
.blog-inline-cta__content p {
    color: var(--text-light-body);
    font-size: 0.95rem;
    line-height: 1.55;
    margin-bottom: 1.8rem;
    max-width: 600px;
}
.inline-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
.btn-whatsapp-border {
    border: 1px solid rgba(37, 211, 102, 0.4);
    color: #25d366;
    background: transparent;
    font-weight: 700;
    padding: 0.8rem 1.8rem;
    border-radius: var(--radius-sm);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: all var(--t3) var(--ease);
}
.btn-whatsapp-border:hover {
    background: rgba(37, 211, 102, 0.1);
    border-color: #25d366;
    transform: translateY(-2px);
}

/* FAQ Accordion Section */
.blog-faq-section {
    margin-top: 4rem;
    border-top: 1px solid var(--slate-200);
    padding-top: 3.5rem;
}
.faq-section-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--charcoal);
    margin-bottom: 0.6rem;
}
.faq-section-desc {
    color: var(--slate-600);
    margin-bottom: 2.2rem;
}
.faq-accordion-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.faq-accordion-item {
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-sm);
    overflow: hidden;
    background: var(--white);
    transition: all var(--t3) var(--ease);
}
.faq-accordion-item.active {
    border-color: var(--orange);
    box-shadow: 0 4px 18px rgba(255, 107, 0, 0.04);
}
.faq-accordion-header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: transparent;
    border: none;
    padding: 1.2rem 1.6rem;
    text-align: left;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--charcoal);
    cursor: pointer;
    gap: 1rem;
}
.faq-accordion-header i {
    color: var(--orange);
    transition: transform var(--t3) var(--ease);
}
.faq-accordion-body {
    max-height: 0;
    overflow: hidden;
    padding: 0 1.6rem;
    transition: max-height var(--t3) var(--ease), padding var(--t3) var(--ease);
}
.faq-accordion-item.active .faq-accordion-body {
    max-height: 500px;
    padding-bottom: 1.4rem;
}
.faq-accordion-body p {
    margin: 0;
    line-height: 1.6;
    color: var(--slate-600);
    font-size: 0.95rem;
}

/* Author Bio Card */
.blog-author-card {
    display: flex;
    gap: 1.8rem;
    background: var(--off-white);
    border: 1px solid var(--slate-200);
    border-radius: var(--radius-md);
    padding: 2.2rem;
    margin-top: 4.5rem;
    align-items: center;
}
.author-avatar {
    flex-shrink: 0;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 3px solid var(--white);
    box-shadow: var(--shadow-sm);
}
.author-role {
    display: inline-block;
    color: var(--orange);
    font-weight: 700;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.4rem;
}
.author-name {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--charcoal);
    margin-bottom: 0.6rem;
}
.author-bio {
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--slate-600);
    margin-bottom: 1.2rem;
}
.author-links a {
    color: var(--charcoal);
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;
    transition: color var(--t3) var(--ease);
}
.author-links a:hover {
    color: var(--orange);
}

/* Related Section */
.blog-related-section {
    position: relative;
    padding: 6.5rem 0;
    background: #0b0f1a;
    color: var(--white);
    overflow: hidden;
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.2rem;
}
.blog-card--dark {
    background: rgba(255,255,255,0.03);
    border-color: rgba(255,255,255,0.08);
}
.blog-card--dark:hover {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,107,0,0.3);
}

/* ─── RESPONSIVE BREAKPOINTS ────────────────────────────── */
@media (max-width: 1200px) {
    .blog-details-layout {
        grid-template-columns: 1fr 340px;
        gap: 2.5rem;
    }
    .blog-details-sidebar {
        display: none; /* Hide TOC on medium screens, keep RFQ sidebar */
    }
}

@media (max-width: 1100px) {
    .blog-layout {
        grid-template-columns: 1fr;
        gap: 3.5rem;
    }
}

@media (max-width: 992px) {
    .blog-details-layout {
        grid-template-columns: 1fr;
    }
    .blog-details-right-sidebar {
        margin-top: 3rem;
    }
    .blog-details-rfq-widget {
        position: static; /* Unstick on mobile/tablet */
    }
}

@media (max-width: 768px) {
    .blog-grid {
        grid-template-columns: 1fr;
        gap: 1.8rem;
    }
    .related-grid {
        grid-template-columns: 1fr;
        gap: 1.8rem;
    }
    .blog-details-hero__title {
        font-size: 1.8rem;
    }
    .blog-hero {
        padding: 8rem 0 5rem;
    }
    .blog-hero__title {
        font-size: 2.2rem;
    }
    .blog-author-card {
        flex-direction: column;
        text-align: center;
        padding: 1.8rem;
    }
    .blog-inline-cta {
        padding: 1.8rem;
    }
}


/* ─── CONTACT LINK HIGHLIGHT TRANSITIONS ─────────────────────────── */
.contact-link-item {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    display: inline-flex;
    align-items: center;
    border-radius: 6px;
    padding: 4px 8px;
    margin: -4px -8px;
    cursor: pointer;
    font-weight: 500;
}
.contact-link-item:hover {
    color: #e63224 !important;
    background-color: rgba(230, 50, 36, 0.06);
    transform: translateX(4px);
    box-shadow: 0 4px 12px rgba(230, 50, 36, 0.05);
}
.contact-link-item:hover i {
    transform: scale(1.25) rotate(-8deg);
    color: #c0281c !important;
}
.contact-link-item:active {
    background-color: rgba(230, 50, 36, 0.12);
    transform: translateX(4px) translateY(1px);
}


