*{margin:0;padding:0;box-sizing:border-box}
:root{
  /* Gensets branch — industrial steel/navy */
  --navy-deep:#070e1c;
  --navy:#0c1830;
  --navy2:#13234a;
  --steel:#3d7fc4;
  --steel-light:#6aa3d9;

  /* Docs branch — solar gold/yellow */
  --gold:#d4b820;
  --gold-bright:#ebcc3a;
  --gold-light:#f2dc66;

  /* Interactive — professional blue */
  --blue:#2e6fd9;
  --blue-bright:#3b80f0;
  --blue-light:#6aa5f5;

  /* Neutrals */
  --bg:#070e1c;
  --bg2:#0c1830;
  --bg3:#11203d;
  --text:#e8eaf0;
  --muted:#8a9ab8;
  --muted2:#5e6e8a;
  --border:rgba(255,255,255,0.07);
  --border-strong:rgba(255,255,255,0.14);
}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',-apple-system,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.5}

/* ===== NAV ===== */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0.85rem 2.5rem;background:rgba(7,14,28,0.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
/* Breadcrumbs are <nav> elements too — they must stay in normal flow and NOT
   inherit the fixed site-header positioning above (which caused the breadcrumb
   ribbon to overlap the main nav on blog + service pages). */
nav.breadcrumb,nav.article-breadcrumb{position:static;top:auto;left:auto;right:auto;z-index:auto;padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:none}
.nav-logo{display:flex;align-items:center;gap:0.65rem;text-decoration:none;color:#fff}
.nav-logo-img{height:54px;width:auto;display:block;object-fit:contain}
.nav-logo-text{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.2rem;letter-spacing:0.02em}
.nav-logo-text .t-cogen{color:#fff}
.nav-logo-text .t-pro{color:var(--blue-bright)}
.nav-links{display:flex;gap:1.8rem;align-items:center}
.nav-link{font-size:0.85rem;color:var(--muted);text-decoration:none;transition:color 0.2s;font-weight:500;position:relative}
.nav-link:hover{color:var(--text)}
.nav-link::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--blue-bright);transition:width 0.25s}
.nav-link:hover::after{width:100%}
.nav-right{display:flex;align-items:center;gap:1.25rem}
.lang-toggle{display:flex;border:1px solid var(--border-strong);border-radius:4px;overflow:hidden}
.lang-btn{padding:0.3rem 0.65rem;font-size:0.75rem;font-family:'Archivo',sans-serif;font-weight:600;letter-spacing:0.05em;cursor:pointer;border:none;background:transparent;color:var(--muted);transition:background 0.2s,color 0.2s}
.lang-btn:hover{color:var(--text)}
.lang-btn.active{background:var(--blue);color:#fff}
@media(max-width:860px){.nav-links{display:none}}

/* ===== HERO ===== */
.hero{display:flex;height:100vh;min-height:600px;padding-top:60px}
.hero-side{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;color:#fff;position:relative;overflow:hidden;transition:flex 0.6s cubic-bezier(.4,0,.2,1)}
.hero-side:hover{flex:1.4}
.hero-gensets{background:linear-gradient(155deg,#070e1c 0%,#0c1830 50%,#0e1e42 100%)}
.hero-gensets::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(61,127,196,0.15) 0%,transparent 60%);pointer-events:none}
.hero-docs{background:linear-gradient(155deg,#0a0d12 0%,#13140e 55%,#1a1810 100%)}
.hero-docs::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(212,184,32,0.13) 0%,transparent 60%);pointer-events:none}
.hero-divider{width:1px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,0.18) 30%,rgba(255,255,255,0.18) 70%,transparent);flex-shrink:0;z-index:2}
.hero-side::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;transition:opacity 0.3s}
.hero-gensets::after{background:linear-gradient(to right,transparent,var(--steel),transparent);opacity:0.4}
.hero-docs::after{background:linear-gradient(to right,transparent,var(--gold),transparent);opacity:0.5}
.hero-side:hover::after{opacity:1}
.hero-bg-text{position:absolute;font-family:'Archivo',sans-serif;font-weight:800;font-size:14rem;opacity:0.03;white-space:nowrap;user-select:none;letter-spacing:-0.04em}
.hero-content{text-align:center;padding:2.5rem;position:relative;z-index:1;max-width:430px}
.hero-tag{display:inline-block;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.7rem;letter-spacing:0.22em;text-transform:uppercase;padding:0.35rem 0.85rem;border-radius:2px;margin-bottom:1.5rem}
.hero-gensets .hero-tag{color:var(--steel-light);border:1px solid rgba(61,127,196,0.45);background:rgba(61,127,196,0.09)}
.hero-docs .hero-tag{color:var(--gold-light);border:1px solid rgba(212,184,32,0.5);background:rgba(212,184,32,0.08)}
.hero-title{font-family:'Archivo',sans-serif;font-size:2.4rem;font-weight:800;line-height:1.1;margin-bottom:1.1rem;letter-spacing:-0.02em}
.hero-sub{font-size:0.96rem;color:var(--muted);line-height:1.72;max-width:340px;margin:0 auto}
.hero-arrow{margin-top:2.5rem;font-size:0.78rem;font-family:'Archivo',sans-serif;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:0.7rem;opacity:0.55;transition:opacity 0.2s}
.hero-side:hover .hero-arrow{opacity:1}
.hero-gensets .hero-arrow{color:var(--steel-light)}
.hero-docs .hero-arrow{color:var(--gold-light)}
.arrow-line{width:32px;height:1px;transition:width 0.3s}
.hero-gensets .arrow-line{background:var(--steel-light)}
.hero-docs .arrow-line{background:var(--gold-light)}
.hero-side:hover .arrow-line{width:54px}

/* ===== SHARED SECTIONS ===== */
section{padding:6rem 0;position:relative}
.container{max-width:1180px;margin:0 auto;padding:0 2.5rem}
.section-label{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.72rem;letter-spacing:0.25em;text-transform:uppercase;margin-bottom:0.85rem;display:inline-flex;align-items:center;gap:0.6rem}
.section-label::before{content:'';width:24px;height:1px;background:currentColor;opacity:0.55}
.section-gensets .section-label{color:var(--steel-light)}
.section-docs .section-label{color:var(--gold-light)}
.section-title{font-family:'Archivo',sans-serif;font-size:2.3rem;font-weight:800;line-height:1.12;margin-bottom:1.2rem;letter-spacing:-0.02em;max-width:780px}
.section-intro{font-size:1.02rem;color:var(--muted);line-height:1.78;max-width:680px;margin-bottom:3.5rem}
.section-gensets{background:var(--bg2);border-top:1px solid var(--border)}
.section-docs{background:var(--bg);border-top:1px solid var(--border)}

/* ===== PARTNERS BAR ===== */
.partners{padding:2rem 0;background:var(--navy-deep);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.partners-inner{display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap}
.partners-label{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted2)}
.partner{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.1rem;letter-spacing:0.08em;color:var(--muted);padding:0.5rem 1rem;border:1px solid var(--border);border-radius:4px;transition:color 0.2s,border-color 0.2s}
.partner:hover{color:var(--text);border-color:var(--border-strong)}
.partner-mwm{font-size:1.25rem;letter-spacing:0.12em}
.partner-cert-steel{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.74rem;letter-spacing:0.1em;color:var(--steel-light);padding:0.4rem 0.85rem;border:1px solid rgba(61,127,196,0.45);background:rgba(61,127,196,0.08);border-radius:4px}
.partner-cert-gold{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.74rem;letter-spacing:0.1em;color:var(--gold-light);padding:0.4rem 0.85rem;border:1px solid rgba(212,184,32,0.5);background:rgba(212,184,32,0.07);border-radius:4px}

/* ===== CARDS ===== */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:1.2rem;margin-bottom:3rem}
.card{background:rgba(255,255,255,0.025);border:1px solid var(--border);border-radius:8px;padding:1.6rem 1.5rem;transition:border-color 0.25s,background 0.25s,transform 0.25s;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:0;left:0;width:0;height:2px;transition:width 0.35s ease}
.section-gensets .card:hover{border-color:rgba(61,127,196,0.45);background:rgba(61,127,196,0.05);transform:translateY(-2px)}
.section-gensets .card:hover::before{width:100%;background:var(--steel-light)}
.section-docs .card:hover{border-color:rgba(212,184,32,0.5);background:rgba(212,184,32,0.05);transform:translateY(-2px)}
.section-docs .card:hover::before{width:100%;background:var(--gold-bright)}
.card-icon{font-size:1.55rem;margin-bottom:1rem}
.card-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:1rem;margin-bottom:0.5rem;letter-spacing:-0.005em}
.card-text{font-size:0.88rem;color:var(--muted);line-height:1.67}
/* 5-card grid breakpoint tuning */
.cards-5{grid-template-columns:repeat(auto-fit,minmax(225px,1fr))}
@media(min-width:1100px){.cards-5{grid-template-columns:repeat(5,1fr)}}

/* ===== STACKED IMAGE GALLERY (project images) ===== */
.project-gallery{position:relative;width:100%;aspect-ratio:16/10;background:linear-gradient(135deg,rgba(255,255,255,0.04) 0%,rgba(255,255,255,0.01) 100%);border-bottom:1px solid var(--border);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0.9rem}
.gallery-stack{position:relative;width:88%;height:88%;display:block}
.gallery-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:6px;box-shadow:0 8px 22px rgba(0,0,0,0.55),0 2px 6px rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.09);transition:transform 0.35s cubic-bezier(.4,0,.2,1),box-shadow 0.35s;backface-visibility:hidden}
/* Stack offsets — back to front */
.gallery-stack .gallery-img:nth-child(1){transform:translate(-9%,-7%) rotate(-4deg);z-index:1;opacity:0.92}
.gallery-stack .gallery-img:nth-child(2){transform:translate(-3%,-2%) rotate(-1.5deg);z-index:2;opacity:0.96}
.gallery-stack .gallery-img:nth-child(3){transform:translate(3%,2%) rotate(1.5deg);z-index:3}
.gallery-stack .gallery-img:nth-child(4){transform:translate(9%,7%) rotate(4deg);z-index:4}
/* Single image */
.gallery-stack.gallery-1 .gallery-img:nth-child(1){transform:none;opacity:1}
/* Two images */
.gallery-stack.gallery-2 .gallery-img:nth-child(1){transform:translate(-6%,-4%) rotate(-3deg);opacity:0.94}
.gallery-stack.gallery-2 .gallery-img:nth-child(2){transform:translate(6%,4%) rotate(3deg)}
/* Three images */
.gallery-stack.gallery-3 .gallery-img:nth-child(1){transform:translate(-8%,-6%) rotate(-4.5deg);opacity:0.9}
.gallery-stack.gallery-3 .gallery-img:nth-child(2){transform:translate(0,0) rotate(0deg);z-index:3}
.gallery-stack.gallery-3 .gallery-img:nth-child(3){transform:translate(8%,6%) rotate(4.5deg);z-index:2;opacity:0.93}
/* Hover effect */
.project-gallery:hover .gallery-stack .gallery-img:nth-child(1){transform:translate(-13%,-9%) rotate(-7deg)}
.project-gallery:hover .gallery-stack .gallery-img:nth-child(2){transform:translate(-5%,-3%) rotate(-2.5deg)}
.project-gallery:hover .gallery-stack .gallery-img:nth-child(3){transform:translate(5%,3%) rotate(2.5deg)}
.project-gallery:hover .gallery-stack .gallery-img:nth-child(4){transform:translate(13%,9%) rotate(7deg)}
.project-gallery:hover .gallery-stack.gallery-1 .gallery-img:nth-child(1){transform:scale(1.02)}
.project-gallery:hover .gallery-stack.gallery-2 .gallery-img:nth-child(1){transform:translate(-9%,-6%) rotate(-5deg)}
.project-gallery:hover .gallery-stack.gallery-2 .gallery-img:nth-child(2){transform:translate(9%,6%) rotate(5deg)}
.project-gallery:hover .gallery-stack.gallery-3 .gallery-img:nth-child(1){transform:translate(-11%,-8%) rotate(-6.5deg)}
.project-gallery:hover .gallery-stack.gallery-3 .gallery-img:nth-child(3){transform:translate(11%,8%) rotate(6.5deg)}
.gallery-count-badge{position:absolute;bottom:0.7rem;right:0.7rem;z-index:10;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;letter-spacing:0.08em;background:rgba(7,14,28,0.85);backdrop-filter:blur(6px);color:var(--text);padding:0.32rem 0.6rem;border-radius:4px;border:1px solid var(--border-strong);display:flex;align-items:center;gap:0.35rem;pointer-events:none}
.gallery-count-badge svg{width:11px;height:11px;opacity:0.85}

/* Empty / placeholder gallery */
.project-gallery-empty{position:relative;width:100%;aspect-ratio:16/10;background:linear-gradient(135deg,rgba(255,255,255,0.04) 0%,rgba(255,255,255,0.01) 100%);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted2);font-family:'Archivo',sans-serif;font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;text-align:center;padding:1rem;gap:0.5rem;flex-direction:column}
.project-gallery-empty svg{width:30px;height:30px;opacity:0.4}

/* ===== LIGHTBOX MODAL ===== */
.lightbox{position:fixed;inset:0;background:rgba(3,7,17,0.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:320;display:none;align-items:center;justify-content:center;padding:2rem;animation:lightboxFade 0.25s ease-out}
.lightbox.show{display:flex}
@keyframes lightboxFade{from{opacity:0}to{opacity:1}}
.lightbox-img{max-width:92%;max-height:84vh;object-fit:contain;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,0.75);border:1px solid rgba(255,255,255,0.12);animation:lightboxZoom 0.3s cubic-bezier(.34,1.3,.64,1)}
@keyframes lightboxZoom{from{transform:scale(0.92);opacity:0}to{transform:scale(1);opacity:1}}
.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:rgba(7,14,28,0.7);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,transform 0.15s,border-color 0.2s;font-family:'Archivo',sans-serif;-webkit-tap-highlight-color:transparent}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:rgba(46,111,217,0.5);border-color:var(--blue-bright);transform:scale(1.08)}
.lightbox-close{top:1.5rem;right:1.5rem;width:44px;height:44px;font-size:1.5rem;font-weight:300}
.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:2rem;font-weight:300;line-height:1}
.lightbox-prev{left:1.5rem}
.lightbox-next{right:1.5rem}
.lightbox-prev:hover,.lightbox-next:hover{transform:translateY(-50%) scale(1.08)}
.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);font-family:'Archivo',sans-serif;font-weight:600;font-size:0.8rem;letter-spacing:0.12em;color:var(--text);background:rgba(7,14,28,0.7);backdrop-filter:blur(8px);padding:0.55rem 1rem;border:1px solid var(--border-strong);border-radius:30px}
.lightbox-caption{position:absolute;bottom:4.5rem;left:50%;transform:translateX(-50%);max-width:90%;font-size:0.85rem;color:var(--muted);text-align:center;font-family:'DM Sans',sans-serif;background:rgba(7,14,28,0.7);backdrop-filter:blur(8px);padding:0.55rem 1rem;border-radius:6px;border:1px solid var(--border)}
@media(max-width:600px){.lightbox-close{top:0.9rem;right:0.9rem;width:38px;height:38px}.lightbox-prev{left:0.6rem;width:42px;height:42px;font-size:1.6rem}.lightbox-next{right:0.6rem;width:42px;height:42px;font-size:1.6rem}.lightbox-counter{bottom:0.8rem;font-size:0.72rem}}

/* ===== STATS ===== */
.stats{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:2rem;background:rgba(255,255,255,0.015)}
.stat{flex:1;padding:1.5rem 1.4rem;text-align:center;border-right:1px solid var(--border)}
.stat:last-child{border-right:none}
.stat-num{font-family:'Archivo',sans-serif;font-size:2rem;font-weight:800;margin-bottom:0.2rem;letter-spacing:-0.02em}
.section-gensets .stat-num{color:var(--steel-light)}
.section-docs .stat-num{color:var(--gold-bright)}
.stat-label{font-size:0.78rem;color:var(--muted)}

/* ===== HIGHLIGHT ===== */
.highlight{border-left:3px solid;padding:1.3rem 1.6rem;border-radius:0 6px 6px 0;margin:2.5rem 0}
.section-gensets .highlight{border-color:var(--steel);background:rgba(61,127,196,0.07)}
.section-docs .highlight{border-color:var(--gold);background:rgba(212,184,32,0.07)}
.highlight p{font-size:0.97rem;color:var(--muted);line-height:1.75}
.highlight strong{color:var(--text);font-weight:600}

/* ===== MWM ENGINES SECTION ===== */
.engines-header{display:flex;align-items:flex-end;justify-content:space-between;margin:3.5rem 0 0.8rem;gap:1rem;flex-wrap:wrap}
.engines-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.5rem;letter-spacing:-0.01em;display:flex;align-items:baseline;gap:0.8rem}
.engines-title::before{content:'';width:30px;height:1px;background:var(--muted2);align-self:center}
.engines-sub{font-size:0.88rem;color:var(--muted2);font-style:italic}
.engines-portfolio{font-size:0.96rem;color:var(--muted);line-height:1.78;max-width:920px;margin:1rem 0 2.2rem;padding:1.1rem 1.3rem;background:rgba(61,127,196,0.05);border:1px solid rgba(61,127,196,0.18);border-radius:8px}
.engines-portfolio strong{color:var(--text);font-weight:600}
.engines-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.3rem;margin-bottom:1.5rem}
.engine{background:rgba(255,255,255,0.025);border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:border-color 0.25s,transform 0.25s,box-shadow 0.25s}
.engine:hover{border-color:rgba(61,127,196,0.5);transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,0.3)}
.engine.engine-new{border-color:rgba(61,127,196,0.35)}
.engine-image-wrap{aspect-ratio:4/3;background:linear-gradient(135deg,#0c1830 0%,#0a1424 100%);position:relative;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);overflow:hidden}
.engine-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.engine-placeholder{display:none;flex-direction:column;align-items:center;justify-content:center;color:var(--muted2);gap:0.6rem;padding:1rem;text-align:center}
.engine-placeholder svg{width:54px;height:54px;opacity:0.5}
.engine-placeholder-text{font-family:'Archivo',sans-serif;font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase}
.engine-badge-new{position:absolute;top:0.8rem;right:0.8rem;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.65rem;letter-spacing:0.15em;background:var(--blue);color:#fff;padding:0.3rem 0.6rem;border-radius:3px;text-transform:uppercase;box-shadow:0 2px 8px rgba(46,111,217,0.4)}
.engine-body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.engine-name{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.25rem;letter-spacing:-0.005em;margin-bottom:0.3rem}
.engine-power{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.85rem;color:var(--steel-light);letter-spacing:0.04em;margin-bottom:0.85rem}
.engine-desc{font-size:0.87rem;color:var(--muted);line-height:1.65;margin-bottom:1rem;flex:1}
.engine-specs{display:flex;flex-direction:column;gap:0.4rem;padding-top:0.85rem;border-top:1px solid var(--border)}
.engine-spec{display:flex;justify-content:space-between;font-size:0.78rem;gap:0.5rem}
.engine-spec-label{color:var(--muted2);font-family:'Archivo',sans-serif;letter-spacing:0.02em}
.engine-spec-val{color:var(--text);font-weight:600;text-align:right}

/* MWM footer note under engines */
.mwm-footer-note{display:flex;align-items:center;gap:1rem;padding:1rem 1.3rem;background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:6px;margin-top:0.5rem;font-size:0.83rem;color:var(--muted2)}
.mwm-footer-note::before{content:'ⓘ';font-size:1rem;color:var(--steel-light);flex-shrink:0}

/* ===== AUDITOR BADGE — now gold ===== */
.auditor{display:flex;align-items:center;gap:1.5rem;padding:1.5rem 1.8rem;background:linear-gradient(135deg,rgba(212,184,32,0.13) 0%,rgba(212,184,32,0.04) 100%);border:1px solid rgba(212,184,32,0.4);border-radius:10px;margin:2.5rem 0}
.auditor-seal{width:60px;height:60px;flex-shrink:0;border:2px solid var(--gold-bright);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Archivo',sans-serif;font-weight:800;color:var(--gold-bright);font-size:1.15rem;letter-spacing:0.05em;background:rgba(212,184,32,0.1)}
.auditor-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.05rem;margin-bottom:0.3rem}
.auditor-text{font-size:0.88rem;color:var(--muted);line-height:1.6}
.auditor-cert{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.78rem;letter-spacing:0.06em;color:var(--gold-light);margin-top:0.4rem;display:inline-block}
@media(max-width:520px){.auditor{flex-direction:column;text-align:center}}

/* ===== PROJECT SHOWCASE ===== */
.showcase-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.3rem;letter-spacing:-0.005em;margin:3.5rem 0 1.5rem;display:flex;align-items:baseline;gap:0.8rem}
.showcase-title::before{content:'';width:30px;height:1px;background:var(--muted2)}
.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.3rem}
.project{background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:border-color 0.25s,transform 0.25s}
.section-gensets .project:hover{border-color:rgba(61,127,196,0.45);transform:translateY(-3px)}
.section-docs .project:hover{border-color:rgba(212,184,32,0.5);transform:translateY(-3px)}
.project-image{aspect-ratio:16/10;background:linear-gradient(135deg,rgba(255,255,255,0.04) 0%,rgba(255,255,255,0.01) 100%);position:relative;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center}
.project-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted2);font-family:'Archivo',sans-serif;font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;gap:0.5rem}
.project-placeholder svg{width:30px;height:30px;opacity:0.45}
.project-body{padding:1.3rem 1.4rem 1.5rem}
.project-meta{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:0.7rem}
.project-tag{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.25rem 0.55rem;border-radius:3px}
.section-gensets .project-tag{color:var(--steel-light);background:rgba(61,127,196,0.12);border:1px solid rgba(61,127,196,0.28)}
.section-docs .project-tag{color:var(--gold-light);background:rgba(212,184,32,0.12);border:1px solid rgba(212,184,32,0.32)}
.project-tag-cap{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.78rem;color:var(--text);background:rgba(255,255,255,0.07);border:1px solid var(--border-strong);padding:0.25rem 0.55rem;border-radius:3px}
.project-name{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.03rem;margin-bottom:0.35rem}
.project-region{font-size:0.82rem;color:var(--muted2);margin-bottom:0.65rem}
.project-region::before{content:'⌖ '}
.project-text{font-size:0.88rem;color:var(--muted);line-height:1.65}

/* ===== ABOUT ===== */
.section-about{background:var(--bg2);border-top:1px solid var(--border)}
.section-about .section-label{color:var(--muted)}
.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:start;margin-top:3rem}
.about-story p{font-size:0.98rem;color:var(--muted);line-height:1.82;margin-bottom:1.2rem}
.about-story strong{color:var(--text);font-weight:600}
.company-name-badge{display:inline-flex;align-items:center;gap:0.6rem;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--blue-light);background:rgba(46,111,217,0.1);border:1px solid rgba(46,111,217,0.3);border-radius:4px;padding:0.45rem 0.85rem;margin-bottom:1.5rem}
.about-timeline{border-left:1px solid var(--border);padding-left:1.5rem;margin-top:2rem}
.timeline-item{position:relative;padding:0.9rem 0}
.timeline-item::before{content:'';position:absolute;left:-1.95rem;top:1.05rem;width:9px;height:9px;border-radius:50%;background:var(--bg2);border:2px solid var(--steel-light)}
.timeline-item:nth-child(even)::before{border-color:var(--gold-bright)}
.timeline-year{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.84rem;letter-spacing:0.06em;color:var(--steel-light);margin-bottom:0.2rem}
.timeline-item:nth-child(even) .timeline-year{color:var(--gold-bright)}
.timeline-text{font-size:0.9rem;color:var(--muted);line-height:1.62}
.about-team{background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:10px;padding:1.8rem}
.about-team h4{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.05rem;margin-bottom:1.3rem}
.team-member{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}
.team-member:last-child{border-bottom:none;padding-bottom:0}
.team-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--steel),var(--navy2));display:flex;align-items:center;justify-content:center;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.95rem;color:#fff;flex-shrink:0}
.team-member:nth-child(2) .team-avatar{background:linear-gradient(135deg,var(--gold),#7a6810)}
.team-name{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.95rem;margin-bottom:0.15rem}
.team-role{font-size:0.8rem;color:var(--muted);margin-bottom:0.35rem}
.team-contact{font-size:0.82rem;color:var(--muted2);line-height:1.7}
.team-contact a{color:var(--text);text-decoration:none}
.team-contact a:hover{color:var(--blue-light)}
@media(max-width:860px){.about-grid{grid-template-columns:1fr;gap:2.5rem}}

/* ===== CONTACT ===== */
.section-contact{background:var(--bg);border-top:1px solid var(--border)}
.section-contact .section-label{color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;margin-top:1.5rem}
.contact-info h3{font-family:'Archivo',sans-serif;font-size:1.2rem;font-weight:700;margin-bottom:1.6rem}
.contact-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.4rem}
.contact-row-icon{width:38px;height:38px;border-radius:50%;border:1px solid var(--border-strong);background:rgba(255,255,255,0.02);display:flex;align-items:center;justify-content:center;font-size:0.95rem;flex-shrink:0;margin-top:1px}
.contact-row-label{font-size:0.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.12em;font-family:'Archivo',sans-serif;font-weight:600;margin-bottom:0.2rem}
.contact-row-val{font-size:0.95rem;color:var(--text)}
.contact-row-val a{color:var(--blue-light);text-decoration:none}
.contact-row-val a:hover{text-decoration:underline}
.contact-persons{display:grid;grid-template-columns:1fr 1fr;gap:0.9rem;margin-top:1.5rem}
.person-card{background:rgba(255,255,255,0.025);border:1px solid var(--border);border-radius:8px;padding:1.1rem 1.2rem}
.person-name{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.95rem;margin-bottom:0.4rem}
.person-detail{font-size:0.83rem;color:var(--muted);margin-bottom:0.2rem}
.person-detail a{color:var(--text);text-decoration:none}
.person-detail a:hover{color:var(--blue-light)}
@media(max-width:520px){.contact-persons{grid-template-columns:1fr}}
.contact-form{background:rgba(255,255,255,0.025);border:1px solid var(--border);border-radius:10px;padding:2rem}
.contact-form h3{font-family:'Archivo',sans-serif;font-size:1.2rem;font-weight:700;margin-bottom:1.5rem}
.form-group{margin-bottom:1.1rem}
.form-label{display:block;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.74rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-bottom:0.45rem}
.form-input,.form-textarea{width:100%;background:rgba(0,0,0,0.28);border:1px solid var(--border-strong);border-radius:6px;padding:0.75rem 0.95rem;color:var(--text);font-family:'DM Sans',sans-serif;font-size:0.93rem;transition:border-color 0.2s;outline:none}
.form-input:focus,.form-textarea:focus{border-color:var(--blue-bright);box-shadow:0 0 0 3px rgba(46,111,217,0.12)}
.form-textarea{resize:vertical;min-height:110px}
.form-honey{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.form-submit{display:inline-flex;align-items:center;gap:0.7rem;background:var(--blue);color:#fff;border:none;padding:0.85rem 1.7rem;border-radius:6px;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.84rem;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;transition:background 0.2s,transform 0.15s,box-shadow 0.2s;margin-top:0.5rem}
.form-submit:hover{background:var(--blue-bright);transform:translateY(-1px);box-shadow:0 4px 18px rgba(46,111,217,0.35)}
.form-submit::after{content:'→';font-size:1.05rem}
.form-success{display:none;background:rgba(46,111,217,0.1);border:1px solid rgba(46,111,217,0.4);color:var(--blue-light);padding:0.85rem 1rem;border-radius:6px;font-size:0.9rem;margin-top:1rem}
.form-success.show{display:block}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr;gap:2.5rem}}

/* ===== FOOTER ===== */
footer{background:var(--navy-deep);border-top:1px solid var(--border);padding:3rem 2.5rem 2rem}
.footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}
.footer-col h5{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.77rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted2);margin-bottom:1rem}
.footer-col a,.footer-col p{display:block;font-size:0.86rem;color:var(--muted);text-decoration:none;margin-bottom:0.5rem;line-height:1.6;transition:color 0.2s}
.footer-col a:hover{color:var(--text)}
.footer-brand{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.25rem;color:#fff;margin-bottom:0.35rem;letter-spacing:0.02em}
.footer-brand .t-pro{color:var(--blue-bright)}
.footer-brand-img{height:54px;width:auto;display:block;object-fit:contain;margin-bottom:0.6rem}
.footer-sub{font-size:0.78rem;color:var(--muted2);margin-bottom:0.7rem;font-style:italic}
.footer-tagline{font-size:0.87rem;color:var(--muted);max-width:280px;line-height:1.65}
.footer-bottom{max-width:1180px;margin:1.5rem auto 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-text{font-size:0.78rem;color:var(--muted2)}
.footer-bottom-links{display:flex;gap:1.4rem}
.footer-bottom-links a{font-size:0.78rem;color:var(--muted2);text-decoration:none;transition:color 0.2s}
.footer-bottom-links a:hover{color:var(--text)}
@media(max-width:760px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:1.8rem}
  .footer-grid>div:first-child{grid-column:1/-1}
  .footer-bottom{flex-direction:column;text-align:center}
}

/* ===== WHATSAPP ===== */
.whatsapp-float{position:fixed;bottom:1.5rem;right:1.5rem;width:54px;height:54px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(37,211,102,0.35),0 2px 6px rgba(0,0,0,0.4);z-index:80;transition:transform 0.2s,box-shadow 0.2s;text-decoration:none}
.whatsapp-float:hover{transform:scale(1.08);box-shadow:0 8px 28px rgba(37,211,102,0.5)}
.whatsapp-float svg{width:28px;height:28px;fill:#fff}
.whatsapp-float::after{content:'';position:absolute;inset:-2px;border-radius:50%;border:2px solid #25d366;opacity:0.5;animation:pulse 2.2s ease-out infinite}
@keyframes pulse{0%{transform:scale(1);opacity:0.5}100%{transform:scale(1.45);opacity:0}}

/* ===== COOKIE BANNER ===== */
.cookie-banner{position:fixed;bottom:1.5rem;left:1.5rem;right:6rem;max-width:480px;z-index:90;background:rgba(9,18,40,0.97);backdrop-filter:blur(10px);border:1px solid var(--border-strong);border-radius:10px;padding:1.1rem 1.3rem;box-shadow:0 10px 30px rgba(0,0,0,0.5);display:none;animation:slideUp 0.4s ease-out}
.cookie-banner.show{display:block}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.cookie-text{font-size:0.84rem;color:var(--muted);line-height:1.55;margin-bottom:0.85rem}
.cookie-text a{color:var(--blue-light);text-decoration:none}
.cookie-actions{display:flex;gap:0.6rem;flex-wrap:wrap}
.cookie-btn{padding:0.5rem 1.1rem;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.78rem;letter-spacing:0.06em;border-radius:5px;border:1px solid var(--border-strong);background:transparent;color:var(--text);cursor:pointer;transition:background 0.2s,border-color 0.2s}
.cookie-btn:hover{border-color:var(--text)}
.cookie-btn-accept{background:var(--blue);border-color:var(--blue);color:#fff}
.cookie-btn-accept:hover{background:var(--blue-bright);border-color:var(--blue-bright)}
@media(max-width:600px){.cookie-banner{left:0.75rem;right:0.75rem;bottom:5rem;max-width:none}}

/* ===== RESPONSIVE ===== */
@media(max-width:768px){
  nav{padding:0.85rem 1.25rem}
  .hero{flex-direction:column;height:auto}
  .hero-side{min-height:48vh;flex:none!important}
  .hero-side:hover{flex:none!important}
  .hero-divider{width:100%;height:1px}
  .hero-title{font-size:1.85rem}
  .hero-bg-text{font-size:7rem}
  .section-title{font-size:1.8rem}
  section{padding:4.5rem 0}
  .container{padding:0 1.25rem}
  .stats{flex-direction:column}
  .stat{border-right:none;border-bottom:1px solid var(--border)}
  .stat:last-child{border-bottom:none}
  .partners-inner{gap:1.5rem}
}

/* ===== V8: BRANCH CONTACT FORMS (per-branch palette) ===== */
.branch-contact{margin-top:4rem;display:grid;grid-template-columns:0.85fr 1.15fr;gap:2.5rem;align-items:start;border-top:1px solid var(--border);padding-top:3rem}
.branch-contact-head h3{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.35rem;margin-bottom:0.9rem;letter-spacing:-0.01em}
.branch-contact-head p{font-size:0.92rem;color:var(--muted);line-height:1.7;margin-bottom:0.8rem}
.branch-contact-head a{text-decoration:none;font-weight:600}
.section-gensets .branch-contact-head a{color:var(--steel-light)}
.section-docs .branch-contact-head a{color:var(--gold-light)}
.branch-contact-head a:hover{text-decoration:underline}
.contact-lead{display:inline-flex;align-items:center;gap:0.6rem;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.78rem;letter-spacing:0.06em;border-radius:5px;padding:0.55rem 0.9rem;margin-top:0.4rem}
.section-gensets .contact-lead{color:var(--steel-light);background:rgba(61,127,196,0.1);border:1px solid rgba(61,127,196,0.3)}
.section-docs .contact-lead{color:var(--gold-light);background:rgba(212,184,32,0.1);border:1px solid rgba(212,184,32,0.32)}
.form-select{width:100%;background:rgba(0,0,0,0.28);border:1px solid var(--border-strong);border-radius:6px;padding:0.75rem 0.95rem;color:var(--text);font-family:'DM Sans',sans-serif;font-size:0.93rem;transition:border-color 0.2s;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a9ab8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.85rem center;background-size:16px;padding-right:2.4rem}
.form-select option{background:#0c1830;color:var(--text)}
/* Branch-scoped form accents */
.section-gensets .form-input:focus,.section-gensets .form-textarea:focus,.section-gensets .form-select:focus{border-color:var(--steel-light);box-shadow:0 0 0 3px rgba(61,127,196,0.14)}
.section-gensets .form-submit{background:var(--steel)}
.section-gensets .form-submit:hover{background:var(--steel-light);box-shadow:0 4px 18px rgba(61,127,196,0.35)}
.section-gensets .form-success{background:rgba(61,127,196,0.1);border-color:rgba(61,127,196,0.4);color:var(--steel-light)}
.section-docs .form-input:focus,.section-docs .form-textarea:focus,.section-docs .form-select:focus{border-color:var(--gold-bright);box-shadow:0 0 0 3px rgba(212,184,32,0.14)}
.section-docs .form-submit{background:var(--gold);color:#1a1500}
.section-docs .form-submit:hover{background:var(--gold-bright);box-shadow:0 4px 18px rgba(212,184,32,0.35)}
.section-docs .form-success{background:rgba(212,184,32,0.1);border-color:rgba(212,184,32,0.4);color:var(--gold-light)}
@media(max-width:820px){.branch-contact{grid-template-columns:1fr;gap:1.8rem}}

/* ===== V8: DOCS ACTIVITY BUTTONS (interactive, name-only) ===== */
.doc-activities{display:flex;flex-wrap:wrap;justify-content:center;gap:1.1rem;margin:0 auto 1.2rem;max-width:920px}
.doc-activity-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.85rem;text-align:center;background:rgba(212,184,32,0.04);border:1px solid rgba(212,184,32,0.22);border-radius:10px;padding:1.5rem 2rem;color:var(--text);font-family:'Archivo',sans-serif;font-weight:700;font-size:1.1rem;letter-spacing:-0.005em;cursor:pointer;transition:border-color 0.22s,background 0.22s,transform 0.22s;line-height:1.3;flex:1 1 320px;max-width:440px}
.doc-activity-btn:hover{border-color:var(--gold-bright);background:rgba(212,184,32,0.1);transform:translateY(-2px)}
.doc-activity-btn .doc-btn-arrow{flex-shrink:0;width:26px;height:26px;border-radius:50%;border:1px solid rgba(212,184,32,0.4);display:flex;align-items:center;justify-content:center;color:var(--gold-light);font-size:0.95rem;transition:background 0.22s,transform 0.22s}
.doc-activity-btn:hover .doc-btn-arrow{background:rgba(212,184,32,0.18);transform:translateX(2px)}
.doc-activities-hint{font-size:0.84rem;color:var(--muted2);font-style:italic;text-align:center;margin-bottom:2rem}

/* ===== V8: SLIDE-IN DOC PANEL (50% from right) ===== */
.doc-panel-overlay{position:fixed;inset:0;background:rgba(3,7,17,0.6);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:210;opacity:0;visibility:hidden;transition:opacity 0.3s ease}
.doc-panel-overlay.show{opacity:1;visibility:visible}
.doc-panel{position:absolute;top:0;right:0;height:100%;width:50%;background:linear-gradient(180deg,#0b1322 0%,#0a1120 100%);border-left:1px solid rgba(212,184,32,0.28);box-shadow:-20px 0 60px rgba(0,0,0,0.55);transform:translateX(100%);transition:transform 0.38s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}
.doc-panel-overlay.show .doc-panel{transform:translateX(0)}
.doc-panel-close{position:absolute;top:1.1rem;right:1.1rem;z-index:5;width:42px;height:42px;border-radius:50%;background:rgba(7,14,28,0.7);border:1px solid var(--border-strong);color:#fff;font-size:1.5rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,border-color 0.2s,transform 0.15s}
.doc-panel-close:hover{background:rgba(212,184,32,0.25);border-color:var(--gold-bright);transform:scale(1.07)}
.doc-panel-scroll{overflow-y:auto;height:100%;padding:0 0 2.5rem}
.doc-panel-content{display:none}
.doc-panel-content.active{display:block;animation:docFade 0.4s ease-out}
@keyframes docFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.doc-panel-media{width:100%;background:#070e1c;border-bottom:1px solid rgba(212,184,32,0.2);cursor:pointer;display:flex;flex-direction:column;gap:2px}
.doc-panel-media img{width:100%;height:auto;display:block}
.doc-panel-media-row{display:flex;gap:2px}
.doc-panel-media-row img{width:50%;object-fit:cover}
.doc-panel-media-hint{position:absolute;top:1.1rem;left:1.1rem;z-index:4;font-family:'Archivo',sans-serif;font-size:0.66rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text);background:rgba(7,14,28,0.7);backdrop-filter:blur(6px);padding:0.35rem 0.65rem;border-radius:4px;border:1px solid var(--border-strong);display:flex;align-items:center;gap:0.4rem;pointer-events:none}
.doc-panel-media-wrap{position:relative}
.doc-panel-text-wrap{padding:1.8rem 2.1rem 0}
.doc-panel-tag{display:inline-block;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold-light);background:rgba(212,184,32,0.1);border:1px solid rgba(212,184,32,0.3);padding:0.3rem 0.7rem;border-radius:3px;margin-bottom:1rem}
.doc-panel-title{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.65rem;letter-spacing:-0.015em;margin-bottom:1rem;line-height:1.15}
.doc-panel-desc{font-size:1rem;color:var(--text);line-height:1.7;margin-bottom:1.4rem}
.doc-panel-detail{font-size:0.86rem;color:var(--muted);line-height:1.72}
.doc-panel-detail p{margin-bottom:0.9rem}
.doc-panel-detail ul{list-style:none;margin:0.4rem 0 1rem;padding:0;display:flex;flex-direction:column;gap:0.55rem}
.doc-panel-detail li{position:relative;padding-left:1.2rem;font-size:0.85rem;line-height:1.6}
.doc-panel-detail li::before{content:'';position:absolute;left:0;top:0.55em;width:6px;height:6px;border-radius:50%;background:var(--gold-bright)}
.doc-panel-cta{margin:1.8rem 2.1rem 0;padding-top:1.6rem;border-top:1px solid var(--border)}
.doc-panel-cta-btn{display:inline-flex;align-items:center;gap:0.7rem;background:var(--gold);color:#1a1500;border:none;padding:0.85rem 1.7rem;border-radius:6px;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.84rem;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;transition:background 0.2s,transform 0.15s,box-shadow 0.2s}
.doc-panel-cta-btn:hover{background:var(--gold-bright);transform:translateY(-1px);box-shadow:0 4px 18px rgba(212,184,32,0.35)}
.doc-panel-cta-btn::after{content:'→';font-size:1.05rem}
@media(max-width:900px){.doc-panel{width:88%}}
@media(max-width:560px){.doc-panel{width:100%}.doc-panel-text-wrap,.doc-panel-cta{padding-left:1.3rem;padding-right:1.3rem}.doc-panel-cta{margin-left:1.3rem;margin-right:1.3rem}.doc-panel-title{font-size:1.4rem}}

/* ===== V8: TEXT-ONLY PROJECT TILES (docs branch) + "..." tile ===== */
.project-textonly .project-body{padding-top:1.5rem}
.project-more{display:flex;align-items:center;justify-content:center;min-height:120px;border:1px dashed var(--border-strong);border-radius:8px;background:rgba(255,255,255,0.015);color:var(--muted2);font-family:'Archivo',sans-serif;font-weight:800;font-size:2rem;letter-spacing:0.2em;transition:border-color 0.25s,color 0.25s}
.section-docs .project-more:hover{border-color:rgba(212,184,32,0.4);color:var(--gold-light)}
.section-gensets .project-more:hover{border-color:rgba(61,127,196,0.45);color:var(--steel-light)}

/* ===== V8: CONTACT SECTION CTA NOTE (forms now live in branches) ===== */
.contact-cta-note{background:rgba(255,255,255,0.025);border:1px solid var(--border);border-radius:10px;padding:2rem}
.contact-cta-note h3{font-family:'Archivo',sans-serif;font-size:1.2rem;font-weight:700;margin-bottom:0.8rem}
.contact-cta-note p{font-size:0.92rem;color:var(--muted);line-height:1.7;margin-bottom:1.4rem}
.contact-cta-links{display:flex;flex-direction:column;gap:0.8rem}
.contact-cta-link{display:flex;align-items:center;justify-content:space-between;gap:0.8rem;text-decoration:none;border-radius:8px;padding:1rem 1.2rem;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.95rem;transition:transform 0.2s,border-color 0.2s,background 0.2s}
.contact-cta-link span.cta-arrow{font-size:1.1rem}
.contact-cta-link.cta-energy{color:var(--steel-light);background:rgba(61,127,196,0.08);border:1px solid rgba(61,127,196,0.3)}
.contact-cta-link.cta-energy:hover{background:rgba(61,127,196,0.15);transform:translateX(3px)}
.contact-cta-link.cta-solutions{color:var(--gold-light);background:rgba(212,184,32,0.08);border:1px solid rgba(212,184,32,0.32)}
.contact-cta-link.cta-solutions:hover{background:rgba(212,184,32,0.15);transform:translateX(3px)}

::selection{background:var(--blue);color:#fff}

/* ============================================================
   ===============  V12 ADDITIONS (multi-page)  ===============
   ============================================================ */

/* ===== V12: PAGE HERO (header band on non-home pages) ===== */
.page-hero{padding:calc(60px + 3.2rem) 0 2.6rem;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.page-hero.ph-energy{background:linear-gradient(155deg,#070e1c 0%,#0c1830 55%,#0e1e42 100%)}
.page-hero.ph-energy::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 0%,rgba(61,127,196,0.16) 0%,transparent 60%);pointer-events:none}
.page-hero.ph-solutions{background:linear-gradient(155deg,#0a0d12 0%,#13140e 55%,#1a1810 100%)}
.page-hero.ph-solutions::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 0%,rgba(212,184,32,0.14) 0%,transparent 60%);pointer-events:none}
.page-hero .container{position:relative;z-index:1}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:0.5rem;font-family:'Archivo',sans-serif;font-size:0.74rem;letter-spacing:0.04em;color:var(--muted2);margin-bottom:1.4rem}
.breadcrumb a{color:var(--muted);text-decoration:none;transition:color 0.2s}
.breadcrumb a:hover{color:var(--text)}
.breadcrumb .sep{opacity:0.5}
.breadcrumb .current{color:var(--text)}
.page-hero-tag{display:inline-block;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.68rem;letter-spacing:0.16em;text-transform:uppercase;padding:0.32rem 0.8rem;border-radius:3px;margin-bottom:1.1rem}
.ph-energy .page-hero-tag{color:var(--steel-light);border:1px solid rgba(61,127,196,0.45);background:rgba(61,127,196,0.09)}
.ph-solutions .page-hero-tag{color:var(--gold-light);border:1px solid rgba(212,184,32,0.5);background:rgba(212,184,32,0.08)}
.page-hero-title{font-family:'Archivo',sans-serif;font-size:2.5rem;font-weight:800;line-height:1.1;letter-spacing:-0.02em;margin-bottom:1.1rem;max-width:880px}
.page-hero-lead{font-size:1.04rem;color:var(--muted);line-height:1.75;max-width:760px}
.page-hero-updated{font-size:0.78rem;color:var(--muted2);font-style:italic;margin-top:0.6rem}
@media(max-width:768px){.page-hero{padding:calc(60px + 2rem) 0 2rem}.page-hero-title{font-size:1.85rem}}

/* ===== V12: HOME INTRO — two-direction cards ===== */
.home-intro{background:var(--bg);border-top:1px solid var(--border)}
.intro-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.6rem}
.intro-card{display:flex;flex-direction:column;text-decoration:none;border-radius:12px;padding:2rem 1.9rem;border:1px solid var(--border);background:rgba(255,255,255,0.02);transition:border-color 0.25s,background 0.25s,transform 0.25s;position:relative;overflow:hidden}
.intro-card::before{content:'';position:absolute;top:0;left:0;width:0;height:3px;transition:width 0.4s ease}
.intro-card.ic-energy:hover{border-color:rgba(61,127,196,0.5);background:rgba(61,127,196,0.05);transform:translateY(-3px)}
.intro-card.ic-energy:hover::before{width:100%;background:var(--steel-light)}
.intro-card.ic-solutions:hover{border-color:rgba(212,184,32,0.5);background:rgba(212,184,32,0.05);transform:translateY(-3px)}
.intro-card.ic-solutions:hover::before{width:100%;background:var(--gold-bright)}
.intro-card-tag{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.68rem;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:0.9rem}
.ic-energy .intro-card-tag{color:var(--steel-light)}
.ic-solutions .intro-card-tag{color:var(--gold-light)}
.intro-card-title{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.4rem;letter-spacing:-0.01em;color:var(--text);margin-bottom:0.7rem;line-height:1.18}
.intro-card-text{font-size:0.92rem;color:var(--muted);line-height:1.7;flex:1;margin-bottom:1.4rem}
.intro-card-link{display:inline-flex;align-items:center;gap:0.6rem;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.82rem;letter-spacing:0.05em}
.ic-energy .intro-card-link{color:var(--steel-light)}
.ic-solutions .intro-card-link{color:var(--gold-light)}
.intro-card-link .ar{transition:transform 0.2s}
.intro-card:hover .intro-card-link .ar{transform:translateX(4px)}
@media(max-width:760px){.intro-cards{grid-template-columns:1fr}}

/* ===== V12: ENERGY PROJECT TITLE-BUTTONS (open popup) ===== */
.proj-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.1rem;margin-top:1.5rem}
.proj-btn{display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;background:rgba(61,127,196,0.04);border:1px solid rgba(61,127,196,0.22);border-radius:10px;padding:1.3rem 1.5rem;color:var(--text);font-family:'Archivo',sans-serif;cursor:pointer;transition:border-color 0.22s,background 0.22s,transform 0.22s;width:100%}
.proj-btn:hover{border-color:var(--steel-light);background:rgba(61,127,196,0.1);transform:translateY(-2px)}
.proj-btn-main{display:flex;flex-direction:column;gap:0.35rem;min-width:0}
.proj-btn-title{font-weight:700;font-size:1.05rem;letter-spacing:-0.005em;line-height:1.25}
.proj-btn-meta{display:flex;gap:0.45rem;flex-wrap:wrap;align-items:center}
.proj-btn-cap{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;color:var(--text);background:rgba(255,255,255,0.07);border:1px solid var(--border-strong);padding:0.2rem 0.5rem;border-radius:3px}
.proj-btn-region{font-size:0.76rem;color:var(--muted2)}
.proj-btn-region::before{content:'⌖ '}
.proj-btn-arrow{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:1px solid rgba(61,127,196,0.4);display:flex;align-items:center;justify-content:center;color:var(--steel-light);font-size:1rem;transition:background 0.22s,transform 0.22s}
.proj-btn:hover .proj-btn-arrow{background:rgba(61,127,196,0.18);transform:translateX(2px)}

/* ===== V12: SLIDE-IN PROJECT PANEL (steel-themed, reused pattern) ===== */
.proj-panel-overlay{position:fixed;inset:0;background:rgba(3,7,17,0.6);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:210;opacity:0;visibility:hidden;transition:opacity 0.3s ease}
.proj-panel-overlay.show{opacity:1;visibility:visible}
.proj-panel{position:absolute;top:0;right:0;height:100%;width:50%;background:linear-gradient(180deg,#0b1322 0%,#0a1120 100%);border-left:1px solid rgba(61,127,196,0.3);box-shadow:-20px 0 60px rgba(0,0,0,0.55);transform:translateX(100%);transition:transform 0.38s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}
.proj-panel-overlay.show .proj-panel{transform:translateX(0)}
.proj-panel-close{position:absolute;top:1.1rem;right:1.1rem;z-index:5;width:42px;height:42px;border-radius:50%;background:rgba(7,14,28,0.7);border:1px solid var(--border-strong);color:#fff;font-size:1.5rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,border-color 0.2s,transform 0.15s}
.proj-panel-close:hover{background:rgba(61,127,196,0.28);border-color:var(--steel-light);transform:scale(1.07)}
.proj-panel-scroll{overflow-y:auto;height:100%;padding:0 0 2.5rem}
.proj-panel-content{display:none}
.proj-panel-content.active{display:block;animation:docFade 0.4s ease-out}
.proj-panel-text-wrap{padding:3.6rem 2.1rem 0}
.proj-panel-meta{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:0.9rem}
.proj-panel-tag{display:inline-block;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--steel-light);background:rgba(61,127,196,0.12);border:1px solid rgba(61,127,196,0.3);padding:0.28rem 0.6rem;border-radius:3px}
.proj-panel-cap{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.74rem;color:var(--text);background:rgba(255,255,255,0.07);border:1px solid var(--border-strong);padding:0.28rem 0.6rem;border-radius:3px}
.proj-panel-title{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.6rem;letter-spacing:-0.015em;margin-bottom:0.5rem;line-height:1.16}
.proj-panel-region{font-size:0.86rem;color:var(--muted2);margin-bottom:1.1rem}
.proj-panel-region::before{content:'⌖ '}
.proj-panel-desc{font-size:0.96rem;color:var(--text);line-height:1.72;margin-bottom:1.6rem}
.proj-panel-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0.6rem;padding:0 2.1rem 0.5rem}
.proj-panel-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px;border:1px solid var(--border-strong);cursor:pointer;transition:transform 0.2s,border-color 0.2s;display:block}
.proj-panel-gallery img:hover{transform:scale(1.02);border-color:var(--steel-light)}
.proj-panel-gallery-hint{font-size:0.76rem;color:var(--muted2);font-style:italic;padding:0.7rem 2.1rem 0}
@media(max-width:900px){.proj-panel{width:88%}}
@media(max-width:560px){.proj-panel{width:100%}.proj-panel-text-wrap,.proj-panel-gallery,.proj-panel-gallery-hint{padding-left:1.3rem;padding-right:1.3rem}.proj-panel-title{font-size:1.35rem}}

/* ===== V12: SERVICE PAGE (legislative content as real page) ===== */
.svc-section{background:var(--bg);padding-top:3rem}
.svc-images{margin:0 0 2.4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.7rem;max-width:780px}
.svc-images img{width:100%;height:180px;object-fit:cover;border-radius:8px;border:1px solid var(--border-strong);cursor:pointer;transition:transform 0.2s,border-color 0.2s;display:block}
.svc-images img:hover{transform:scale(1.015);border-color:var(--gold-bright)}
.svc-images-hint{font-size:0.78rem;color:var(--muted2);font-style:italic;margin:-1.6rem 0 2.4rem}
.svc-body{max-width:860px}
.svc-body .doc-panel-detail{font-size:0.92rem}
.svc-body .doc-panel-detail p{margin-bottom:1rem;color:var(--muted);line-height:1.8}
.svc-back-cta{margin-top:2.6rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;align-items:center}
.btn-gold{display:inline-flex;align-items:center;gap:0.7rem;background:var(--gold);color:#1a1500;border:none;padding:0.85rem 1.7rem;border-radius:6px;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.84rem;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:background 0.2s,transform 0.15s,box-shadow 0.2s}
.btn-gold:hover{background:var(--gold-bright);transform:translateY(-1px);box-shadow:0 4px 18px rgba(212,184,32,0.35)}
.btn-gold::after{content:'→';font-size:1.05rem}
.btn-ghost{display:inline-flex;align-items:center;gap:0.55rem;color:var(--muted);text-decoration:none;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.82rem;letter-spacing:0.04em;transition:color 0.2s}
.btn-ghost:hover{color:var(--text)}
.btn-ghost::before{content:'←';font-size:1rem}

/* ===== V12: SOLUTIONS SERVICE LINK GRID (5 real links) ===== */
.svc-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.1rem;margin:1.5rem 0 1rem}
.svc-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;text-decoration:none;background:rgba(212,184,32,0.04);border:1px solid rgba(212,184,32,0.22);border-radius:10px;padding:1.4rem 1.6rem;color:var(--text);transition:border-color 0.22s,background 0.22s,transform 0.22s}
.svc-link:hover{border-color:var(--gold-bright);background:rgba(212,184,32,0.1);transform:translateY(-2px)}
.svc-link-main{display:flex;flex-direction:column;gap:0.3rem;min-width:0}
.svc-link-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-0.005em;line-height:1.25}
.svc-link-sub{font-size:0.8rem;color:var(--muted2);line-height:1.4}
.svc-link-arrow{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:1px solid rgba(212,184,32,0.4);display:flex;align-items:center;justify-content:center;color:var(--gold-light);font-size:1rem;transition:background 0.22s,transform 0.22s}
.svc-link:hover .svc-link-arrow{background:rgba(212,184,32,0.18);transform:translateX(2px)}

/* ── V13: service-page extended content (process flow, FAQ accordion) ── */
.proc-flow{display:flex;flex-wrap:wrap;align-items:center;gap:0.7rem;margin:0 0 3rem;padding:1.5rem 1.6rem;background:rgba(255,255,255,0.015);border:1px solid var(--border);border-radius:12px}
.proc-flow-label{width:100%;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.78rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted2);margin-bottom:0.7rem}
.proc-step{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.9rem;letter-spacing:0.03em;color:var(--muted);border:1px solid var(--border-strong);background:rgba(255,255,255,0.025);border-radius:7px;padding:0.62rem 1.05rem;white-space:nowrap}
.proc-step.active{color:#1a1500;font-weight:700;background:var(--gold);border-color:var(--gold-bright);box-shadow:0 2px 16px rgba(212,184,32,0.35)}
.proc-arrow{color:var(--muted2);font-size:0.95rem;flex-shrink:0}
@media(max-width:560px){.proc-flow{padding:1.1rem}.proc-step{font-size:0.78rem;padding:0.48rem 0.7rem}}
.svc-body .showcase-title{margin-top:2.8rem}
.svc-faq{max-width:860px;margin-top:0.5rem}
.svc-faq-item{border:1px solid var(--border);border-radius:8px;background:rgba(255,255,255,0.02);margin-bottom:0.7rem;overflow:hidden}
.svc-faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;font-family:'Archivo',sans-serif;font-weight:600;font-size:0.93rem;color:var(--text);transition:background 0.2s}
.svc-faq-item summary::-webkit-details-marker{display:none}
.svc-faq-item summary::after{content:'+';color:var(--gold-light);font-size:1.25rem;font-weight:400;flex-shrink:0;transition:transform 0.2s;line-height:1}
.svc-faq-item[open] summary::after{transform:rotate(45deg)}
.svc-faq-item summary:hover{background:rgba(212,184,32,0.05)}
.svc-faq-a{padding:0 1.2rem 1.1rem;color:var(--muted);font-size:0.89rem;line-height:1.75}
.svc-faq-a p{margin-bottom:0.7rem}
.svc-faq-a p:last-child{margin-bottom:0}
.svc-cta-lead{max-width:860px;color:var(--muted);font-size:0.95rem;line-height:1.8;margin-top:2.6rem}

/* ── De ce CogenPro — diferențiatori (homepage) ── */
.section-diff{background:var(--bg);border-top:1px solid var(--border)}
.diff-badge{display:inline-flex;align-items:center;gap:0.6rem;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold-light);background:rgba(212,184,32,0.08);border:1px solid rgba(212,184,32,0.3);border-radius:4px;padding:0.45rem 0.85rem;margin-bottom:1.3rem}
.diff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;margin-top:2.6rem}
.diff-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:1.8rem 1.9rem}
.diff-num{font-family:'Archivo',sans-serif;font-weight:800;font-size:0.85rem;color:var(--gold);letter-spacing:0.05em;margin-bottom:0.9rem}
.diff-motto{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.15rem;line-height:1.35;color:#fff;margin-bottom:0.7rem}
.diff-proof{font-size:0.87rem;line-height:1.65;color:var(--muted)}
@media(max-width:760px){.diff-grid{grid-template-columns:1fr}}

/* ── Trust strip — compact version for service pages ── */
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:0 0 3rem;padding:1.6rem;background:linear-gradient(135deg,rgba(212,184,32,0.05) 0%,rgba(12,24,48,0.35) 100%);border:1px solid var(--border-strong);border-radius:14px}
.trust-item{padding:1.15rem 1rem;background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:10px;position:relative;overflow:hidden;transition:border-color 0.25s,background 0.25s,transform 0.25s}
.trust-item::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 0.3s cubic-bezier(.4,0,.2,1)}
.trust-item:hover{border-color:rgba(212,184,32,0.42);background:rgba(212,184,32,0.05);transform:translateY(-3px)}
.trust-item:hover::before{transform:scaleX(1)}
.trust-item .diff-num{margin-bottom:0.75rem;font-size:0.95rem}
.trust-item .trust-motto{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.98rem;line-height:1.4;color:#fff}
@media(max-width:900px){.trust-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.trust-strip{grid-template-columns:1fr}}

/* ── V21: svc-top-grid — trust-strip + roadmap beside a non-sticky image rail; svc-body reverts to full width below (fixes V20's sticky sidebar + long empty column) ── */
.svc-top-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;column-gap:2.6rem;align-items:start;margin:0 0 2.8rem}
.svc-top-left{grid-column:1;min-width:0}
.svc-top-left .trust-strip,.svc-top-left .proc-flow{margin-bottom:1.1rem}
.svc-top-left .proc-flow{margin-bottom:0}
.svc-rail{grid-column:2;display:flex;flex-direction:column}
.svc-rail .svc-images{display:flex;flex-direction:column;gap:0.75rem;max-width:none;margin:0 0 0.7rem}
.svc-rail .svc-images img{width:100%;height:auto;object-fit:contain;background:#f5f7fa;border:1px solid var(--border-strong);border-radius:8px;padding:6px;box-shadow:0 6px 20px rgba(0,0,0,0.35);transition:transform 0.2s,border-color 0.2s}
.svc-rail .svc-images img:hover{transform:scale(1.02);border-color:var(--gold-bright)}
.svc-rail .svc-images-hint{margin:0;text-align:center}
@media(max-width:900px){
  .svc-top-grid{display:block}
  .svc-rail{display:block}
  .svc-rail .svc-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0.7rem;max-width:780px;margin:0 0 2.4rem}
  .svc-rail .svc-images img{height:180px;object-fit:cover;padding:0;box-shadow:none}
  .svc-rail .svc-images-hint{text-align:left;margin:-1.6rem 0 2.4rem}
}
