/*
Theme Name: Brkić Industrial Premium
Version: 4.0.0
Description: Brushed Metal / Silver industrial WP block theme
*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800&family=Barlow:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap');

:root{
  --c-bg:#0d0e10; --c-bg-2:#15171a; --c-bg-3:#1d1f23; --c-bg-4:#27292e; --c-bg-5:#2f3136;
  --c-border:rgba(255,255,255,0.06); --c-border-2:rgba(255,255,255,0.12);
  --c-text:#c8cacc; --c-text-mid:#909498; --c-text-low:#7d8186; --c-text-dim:#46484c;
  --c-ac:#cfd2d6; --c-ac-2:#a8acb1; --c-ac-3:#f0f1f3;
  --c-hdr:#d6d9dc; --c-hdr-b:#aeb2b6; --c-hdr-text:#46484c; --c-hdr-text-on:#0d0e10;
  --c-topbar:#08090a; --c-footer:#15171a;
  --font-display:'Barlow Condensed',Arial Narrow,sans-serif; --font-body:'Barlow',Arial,sans-serif;
  --content-width:1200px; --wide-width:1440px; --topbar-h:32px; --header-h:68px;
  --shadow-sm:0 1px 4px rgba(0,0,0,.4); --shadow-md:0 4px 20px rgba(0,0,0,.5);
  --shadow-lg:0 8px 40px rgba(0,0,0,.6); --shadow-xl:0 20px 60px rgba(0,0,0,.7);
  --ease:cubic-bezier(.4,0,.2,1); --t-fast:150ms var(--ease); --t-base:250ms var(--ease); --t-slow:400ms var(--ease);
  --radius-sm:2px; --radius-md:4px; --radius-lg:8px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:1rem;line-height:1.65;color:var(--c-text);background:var(--c-bg);overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color var(--t-fast)}
a:hover{color:var(--c-ac-3)}
ul{list-style:none}
button{cursor:pointer;font-family:var(--font-body);border:none;background:none}

h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.1;color:var(--c-text)}
h1{font-size:clamp(2.5rem,6vw,5rem);font-weight:800;text-transform:uppercase;letter-spacing:-.01em}
h2{font-size:clamp(1.8rem,4vw,3rem);text-transform:uppercase}
h3{font-size:clamp(1.1rem,2.5vw,1.6rem)}
p{margin-bottom:1rem}
p:last-child{margin-bottom:0}

.eyebrow{font-family:var(--font-display);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--c-ac);display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem}
.eyebrow::before{content:'';display:inline-block;width:1.75rem;height:1.5px;background:var(--c-ac);flex-shrink:0}
.eyebrow--center{justify-content:center}
.eyebrow--center::after{content:'';display:inline-block;width:1.75rem;height:1.5px;background:var(--c-ac);flex-shrink:0}

.container{max-width:var(--content-width);margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.container--wide{max-width:var(--wide-width);margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.section{padding:clamp(3rem,7vw,6rem) clamp(1rem,4vw,3rem);max-width:var(--content-width);margin:0 auto}
.section--bg-2{background:var(--c-bg-2)}
.section--bg-3{background:var(--c-bg-3)}
.section-header{text-align:center;max-width:720px;margin:0 auto 3rem}
.section-header .eyebrow{justify-content:center}
.section-header p{color:var(--c-text-low);font-size:1.05rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}

/* BRUSHED METAL TEXTURES */
.brkic-brushed-light{background-image:url('assets/images/header-bg.jpg');background-size:cover;background-position:center;background-repeat:no-repeat}
.brkic-brushed-hero{background-image:url('assets/images/hero-bg.jpg');background-size:cover;background-position:center}
.brkic-brushed-page-hero{background-image:url('assets/images/page-hero-bg.jpg');background-size:cover;background-position:center}
.brkic-brushed-card{background-image:url('assets/images/card-dark.jpg');background-size:cover;background-position:center}
.brkic-pogon{background-image:url('assets/images/pogon-overview.jpg');background-size:cover;background-position:center}
.brkic-proj-auto{background-image:url('assets/images/projekt-auto.jpg');background-size:cover;background-position:center}
.brkic-proj-preh{background-image:url('assets/images/projekt-prehrambena.jpg');background-size:cover;background-position:center}
.brkic-proj-energ{background-image:url('assets/images/projekt-energetika.jpg');background-size:cover;background-position:center}
.brkic-proj-robot{background-image:url('assets/images/projekt-robotika.jpg');background-size:cover;background-position:center}
.brkic-proj-konst{background-image:url('assets/images/projekt-konstrukcija.jpg');background-size:cover;background-position:center}
.brkic-proj-incon{background-image:url('assets/images/projekt-inconel.jpg');background-size:cover;background-position:center}
.brkic-haas-vf4{background-image:url('assets/images/haas-vf4ss.jpg');background-size:cover;background-position:center}
.brkic-haas-umc{background-image:url('assets/images/haas-umc750.jpg');background-size:cover;background-position:center}
.brkic-trumpf-laser{background-image:url('assets/images/trumpf-laser.jpg');background-size:cover;background-position:center}
.brkic-trumpf-bend{background-image:url('assets/images/trumpf-trubend.jpg');background-size:cover;background-position:center}
.brkic-zeiss{background-image:url('assets/images/zeiss-cmm.jpg');background-size:cover;background-position:center}
.brkic-fanuc{background-image:url('assets/images/fanuc-robot.jpg');background-size:cover;background-position:center}
.brkic-laser-rezanje{background-image:url('assets/images/laser-rezanje.jpg');background-size:cover;background-position:center}
.brkic-laser-detail{background-image:url('assets/images/laser-detail.jpg');background-size:cover;background-position:center}
.brkic-savijanje{background-image:url('assets/images/savijanje-lima.jpg');background-size:cover;background-position:center}
.brkic-zavarivanje{background-image:url('assets/images/zavarivanje.jpg');background-size:cover;background-position:center}
.brkic-o-nama-hero{background-image:url('assets/images/o-nama-hero.jpg');background-size:cover;background-position:center}
.brkic-tim-foto{background-image:url('assets/images/tim-foto.jpg');background-size:cover;background-position:center}
.brkic-gal-p1{background-image:url('assets/images/galerija-pogon-1.jpg');background-size:cover;background-position:center}
.brkic-gal-p2{background-image:url('assets/images/galerija-pogon-2.jpg');background-size:cover;background-position:center}
.brkic-gal-p3{background-image:url('assets/images/galerija-pogon-3.jpg');background-size:cover;background-position:center}
.brkic-gal-p4{background-image:url('assets/images/galerija-pogon-4.jpg');background-size:cover;background-position:center}
.brkic-gal-p5{background-image:url('assets/images/galerija-pogon-5.jpg');background-size:cover;background-position:center}
.brkic-gal-p6{background-image:url('assets/images/galerija-pogon-6.jpg');background-size:cover;background-position:center}
.brkic-gal-r1{background-image:url('assets/images/galerija-projekt-1.jpg');background-size:cover;background-position:center}
.brkic-gal-r2{background-image:url('assets/images/galerija-projekt-2.jpg');background-size:cover;background-position:center}
.brkic-gal-r3{background-image:url('assets/images/galerija-projekt-3.jpg');background-size:cover;background-position:center}
.brkic-gal-r4{background-image:url('assets/images/galerija-projekt-4.jpg');background-size:cover;background-position:center}
.brkic-gal-r5{background-image:url('assets/images/galerija-projekt-5.jpg');background-size:cover;background-position:center}
.brkic-gal-r6{background-image:url('assets/images/galerija-projekt-6.jpg');background-size:cover;background-position:center}
.brkic-gal-r7{background-image:url('assets/images/galerija-projekt-7.jpg');background-size:cover;background-position:center}
.brkic-gal-r8{background-image:url('assets/images/galerija-projekt-8.jpg');background-size:cover;background-position:center}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;font-family:var(--font-display);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;border-radius:var(--radius-sm);border:1px solid var(--c-ac-2);color:var(--c-ac);background:transparent;transition:all var(--t-base);cursor:pointer;white-space:nowrap;text-decoration:none}
.btn:hover{background:var(--c-ac);border-color:var(--c-ac);color:var(--c-bg)}
.btn--silver{background:var(--c-ac-3);color:var(--c-bg);border:1px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.btn--silver:hover{background:var(--c-ac);color:var(--c-bg);border-color:var(--c-ac)}
.btn--metal{position:relative;color:#eee;border:1px solid #000;background-color:#161719;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 1px,transparent 1px,transparent 3px),linear-gradient(115deg,rgba(255,255,255,.01) 0%,rgba(255,255,255,.07) 45%,rgba(255,255,255,.01) 60%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 8px rgba(0,0,0,.35)}
.btn--metal:hover{color:#fff;border-color:var(--c-ac-2);background-color:#1c1d20}
.btn--outline{border-color:rgba(0,0,0,.2);color:var(--c-hdr-text)}
.btn--outline:hover{border-color:var(--c-hdr-text-on);color:var(--c-hdr-text-on);background:transparent}
.btn--link{border:none;background:none;padding:0;text-decoration:underline;text-transform:none;letter-spacing:.02em;font-size:.92rem;font-weight:700;color:#fff}
.btn--link:hover{color:var(--c-ac-3);background:none}
.btn--lg{padding:1rem 2.5rem;font-size:.88rem}
.btn--sm{padding:.55rem 1.25rem;font-size:.75rem}
.btn--full{width:100%;justify-content:center;min-width:240px}
.btn svg{flex-shrink:0}

/* TOPBAR */
.topbar{background:var(--c-topbar);border-bottom:1px solid var(--c-border);height:var(--topbar-h);display:flex;align-items:center;justify-content:flex-end;padding:0 clamp(1rem,4vw,3rem)}
.topbar__inner{display:flex;align-items:center;gap:0}
.topbar .lang-item{font-family:var(--font-display);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-dim);padding:0 .6rem;border-right:1px solid var(--c-border);transition:color var(--t-fast);text-decoration:none}
.topbar .lang-item:last-child{border-right:none}
.topbar .lang-item.active,.topbar .lang-item:hover{color:var(--c-ac-3)}

/* HEADER */
.site-header{position:sticky;top:0;z-index:1000}
.site-header.scrolled .header-inner{box-shadow:var(--shadow-md)}
.header-inner{background-color:var(--c-hdr);background-image:url('assets/images/header-bg.jpg');background-size:cover;background-position:center;border-bottom:1px solid var(--c-hdr-b);box-shadow:inset 0 1px 0 rgba(255,255,255,.5);max-width:var(--wide-width);margin:0 auto;padding:0 clamp(1rem,4vw,3rem);height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:2rem}

.site-logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;flex-shrink:0}
.site-logo-text{font-family:var(--font-display);font-size:1.35rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--c-hdr-text-on);line-height:1}
.site-logo-text span{color:var(--c-text-mid);font-weight:600;font-size:.85em}
.site-logo-subtitle{display:block;font-family:var(--font-display);font-size:.58rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-mid);margin-top:.2rem}

.site-nav{display:flex;align-items:center}
.site-nav .wp-block-navigation__container{display:flex!important;align-items:center!important;gap:.15rem!important;list-style:none!important;margin:0!important;padding:0!important;flex-wrap:nowrap!important}
.site-nav .wp-block-navigation-item{position:relative}
.site-nav .wp-block-navigation-item__content{display:flex!important;align-items:center!important;gap:.3rem!important;padding:0 .85rem!important;height:var(--header-h)!important;font-family:var(--font-display)!important;font-size:.72rem!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:var(--c-hdr-text)!important;border-bottom:2px solid transparent!important;transition:color var(--t-fast)!important;white-space:nowrap!important;text-decoration:none!important}
.site-nav .wp-block-navigation-item__content:hover{color:var(--c-hdr-text-on)!important}
.site-nav .wp-block-navigation-item.current-menu-item>.wp-block-navigation-item__content,.site-nav .wp-block-navigation-item.current-menu-ancestor>.wp-block-navigation-item__content{color:var(--c-hdr-text-on)!important;border-bottom-color:var(--c-hdr-text-on)!important}

.site-nav .wp-block-navigation__submenu-container{position:absolute;top:calc(100% + 1px);left:0;min-width:210px;background:var(--c-bg-4)!important;border:1px solid var(--c-border-2);border-top:2px solid var(--c-ac-2);box-shadow:var(--shadow-lg);border-radius:0 0 var(--radius-md) var(--radius-md);padding:.4rem 0!important;opacity:0;visibility:hidden;transform:translateY(-6px);transition:all var(--t-base);z-index:100}
.site-nav .wp-block-navigation-item:hover>.wp-block-navigation__submenu-container,
.site-nav .wp-block-navigation-item.focus-open>.wp-block-navigation__submenu-container{opacity:1;visibility:visible;transform:translateY(0)}
.site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{display:block!important;padding:.6rem 1.1rem!important;height:auto!important;font-size:.74rem!important;font-weight:700!important;letter-spacing:.04em!important;color:var(--c-text-low)!important;border-left:2px solid transparent!important;border-bottom:none!important;transition:all var(--t-fast)!important}
.site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item:hover>.wp-block-navigation-item__content{color:var(--c-text)!important;background:var(--c-bg-5)!important;border-left-color:var(--c-ac)!important}

.site-nav .wp-block-navigation-submenu>.wp-block-navigation-item__content::after{content:'';width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid currentColor;opacity:.5;transition:transform var(--t-fast);margin-left:.2rem}
.site-nav .wp-block-navigation-submenu:hover>.wp-block-navigation-item__content::after{transform:rotate(180deg)}
.site-nav .wp-block-navigation__submenu-icon{display:none!important}

.site-nav .wp-block-navigation-item.nav-cta{display:flex!important;align-items:center!important}
.site-nav .wp-block-navigation-item.nav-cta>.wp-block-navigation-item__content{display:inline-flex!important;align-items:center!important;gap:.45rem;color:var(--c-bg)!important;background:var(--c-ac-3)!important;border:1px solid #fff!important;border-radius:var(--radius-sm)!important;padding:.55rem 1.2rem!important;height:auto!important;margin-left:.8rem!important;box-shadow:0 2px 6px rgba(0,0,0,.12);transition:all var(--t-base)!important}
.site-nav .wp-block-navigation-item.nav-cta .wp-block-navigation-item__label{color:inherit!important}
.site-nav .wp-block-navigation-item.nav-cta:hover>.wp-block-navigation-item__content{background:var(--c-ac)!important;color:var(--c-bg)!important;border-color:var(--c-ac)!important}

.menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;cursor:pointer;padding:0;flex-shrink:0;background:none;border:none;position:relative;z-index:1001}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--c-hdr-text-on);border-radius:2px;transition:all var(--t-base);transform-origin:center}
.menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ============================================================
   MOBILE NAV OVERLAY — WP native (overlayMenu:mobile)
   ============================================================ */
.site-nav .wp-block-navigation__responsive-container.is-menu-open {
  background: var(--c-hdr) !important;
  z-index: 1100;
}
.site-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100%;
  gap: 0 !important;
}
.site-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  height: auto !important;
  padding: 1rem clamp(1.25rem,5vw,3rem) !important;
  border-bottom: 1px solid rgba(0,0,0,0.08) !important;
  font-size: 1rem !important;
  justify-content: space-between !important;
  color: var(--c-hdr-text) !important;
}
.site-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
  position: static !important;
  opacity: 1 !important; visibility: visible !important; transform: none !important;
  background: rgba(0,0,0,0.03) !important;
  border: none !important; border-radius: 0 !important;
  box-shadow: none !important;
}
.site-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  padding: 0.85rem clamp(2rem,6vw,4rem) !important;
  font-size: 0.9rem !important;
  border-bottom: 1px solid rgba(0,0,0,0.05) !important;
  color: var(--c-text-low) !important;
}
.site-nav .wp-block-navigation-item.nav-cta .wp-block-navigation-item__content {
  width: 100%;
  justify-content: center !important;
}
.site-nav .wp-block-navigation__responsive-container-open,
.site-nav .wp-block-navigation__responsive-container-close {
  color: var(--c-hdr-text-on) !important;
}
.site-nav .wp-block-navigation__responsive-container-open svg,
.site-nav .wp-block-navigation__responsive-container-close svg {
  fill: var(--c-hdr-text-on) !important;
}
@media (min-width: 901px) {
  .site-nav .wp-block-navigation__responsive-container-open { display: none !important; }
}

/* ============================================================
   HERO — centered, stacked links, image/video ready
   ============================================================ */
.hero-section {
  position: relative;
  min-height: calc(100vh - var(--topbar-h) - var(--header-h));
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  color: #fff;
  background-color: var(--c-bg-3);
}
.hero-bg,
.hero-video-wrap {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero-bg {
  background-image: url('assets/images/hero-bg.jpg');
  background-size: cover;
  background-position: center;
}
.hero-video-wrap video {
  width: 100%; height: 100%;
  object-fit: cover;
}
.hero-section::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(10,11,12,0.55) 0%, rgba(10,11,12,0.88) 100%);
  z-index: 1;
}
.hero-content {
  position: relative;
  z-index: 2;
  max-width: 680px;
  padding: clamp(6rem,12vw,8rem) clamp(1.25rem,4vw,3rem) clamp(3rem,6vw,4rem);
}
.hero-content .eyebrow { color: var(--c-ac); }
.hero-title {
  font-size: clamp(2.4rem,7vw,4.5rem);
  margin-bottom: 1.25rem;
}
.hero-title span { display: block; color: var(--c-ac-3); }
.hero-subtitle {
  font-size: clamp(0.95rem,2vw,1.1rem);
  color: #cfd1d3;
  max-width: 480px;
  margin: 0 auto 2rem;
  line-height: 1.7;
}
.hero-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-bottom: 3rem;
}
.hero-actions .btn--silver { min-width: 240px; justify-content: center; }

.hero-stats {
  display: flex;
  justify-content: center;
  gap: clamp(1.5rem,4vw,3.5rem);
  flex-wrap: wrap;
  border-top: 1px solid rgba(255,255,255,0.12);
  padding-top: 1.75rem;
}
.hero-stat-value {
  font-family: var(--font-display);
  font-size: clamp(1.5rem,3vw,2.25rem);
  font-weight: 800;
  color: var(--c-ac-3);
  line-height: 1;
}
.hero-stat-value em { font-style: normal; font-size: 0.6em; color: var(--c-ac-2); }
.hero-stat-label {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-text-mid);
  margin-top: 0.35rem;
}

/* Hero video controls */
.hero-video-ctrl { position: absolute; bottom: 1.5rem; right: 1.5rem; z-index: 3; }
.hero-video-btn {
  width: 42px; height: 42px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.25);
  background: rgba(0,0,0,0.35);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  transition: all var(--t-base);
}
.hero-video-btn:hover { background: rgba(255,255,255,0.15); border-color: rgba(255,255,255,0.5); }

/* ============================================================
   PARTNERS BAR
   ============================================================ */
.partners-bar__inner {
  max-width: var(--content-width);
  margin: 0 auto;
  padding: 1.1rem clamp(1rem,4vw,3rem);
  display: flex;
  align-items: center;
  gap: clamp(1.5rem,4vw,3rem);
  flex-wrap: wrap;
  justify-content: center;
}
.partners-bar__label {
  font-family: var(--font-display);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c-text-dim);
  padding-right: clamp(1rem,3vw,2rem);
  border-right: 1px solid var(--c-border);
}
.partner-logo {
  font-family: var(--font-display);
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  color: rgba(255,255,255,0.12);
  text-transform: uppercase;
  transition: color var(--t-base);
}
.partner-logo:hover { color: var(--c-text-mid); }

/* ============================================================
   SERVICES — icons + numbers, brushed dark icon tile
   ============================================================ */
.services-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-bottom: 2.5rem;
}
.service-card {
  background: var(--c-bg-2);
  padding: clamp(1.75rem,3vw,2.25rem);
  border-right: 1px solid var(--c-border);
  position: relative;
}
.service-card:last-child { border-right: none; }
.service-card__number {
  position: absolute;
  top: 1.1rem; right: 1.3rem;
  font-family: var(--font-display);
  font-size: 2.4rem;
  font-weight: 800;
  color: rgba(255,255,255,0.035);
  line-height: 1;
}
.service-card__icon {
  width: 46px; height: 46px;
  border-radius: var(--radius-md);
  margin-bottom: 1.2rem;
  display: flex; align-items: center; justify-content: center;
  color: var(--c-ac);
  border: 1px solid rgba(255,255,255,0.08);
  background-color: #23252a;
  background-image:
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0px, rgba(255,255,255,.04) 1px, transparent 1px, transparent 3px),
    linear-gradient(115deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.1) 45%, rgba(255,255,255,.02) 60%);
}
.service-card__title {
  font-size: 1.05rem;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 0.6rem;
  color: var(--c-text);
}
.service-card__text {
  color: var(--c-text-low);
  font-size: 0.88rem;
  line-height: 1.7;
  margin-bottom: 0.9rem;
}
.service-card__list { margin-bottom: 1rem; }
.service-card__list li {
  font-size: 0.8rem;
  color: var(--c-text-mid);
  padding-left: 1rem;
  position: relative;
  margin-bottom: 0.35rem;
}
.service-card__list li::before {
  content: '';
  position: absolute; left: 0; top: 0.55em;
  width: 6px; height: 1px;
  background: var(--c-ac-2);
}
.service-card__link {
  font-family: var(--font-display);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-ac);
  transition: color var(--t-fast);
}
.service-card__link:hover { color: var(--c-ac-3); }

.services-cta-row { text-align: center; }

/* ============================================================
   STATS BAR
   ============================================================ */
.stats-bar__inner {
  max-width: var(--content-width);
  margin: 0 auto;
  padding: clamp(2rem,4vw,3rem) clamp(1rem,4vw,3rem);
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 2rem;
  text-align: center;
}
.stat-item__value {
  font-family: var(--font-display);
  font-size: clamp(1.8rem,3.5vw,2.6rem);
  font-weight: 800;
  color: var(--c-ac-3);
  line-height: 1;
}
.stat-item__value em { font-style: normal; font-size: 0.55em; color: var(--c-ac-2); }
.stat-item__label {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c-text-mid);
  margin-top: 0.5rem;
}

/* ============================================================
   ABOUT SECTION
   ============================================================ */
.about-split {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: clamp(2rem,5vw,4rem);
  align-items: center;
}
.about-image { position: relative; }
.about-image__main {
  aspect-ratio: 4/3;
  border-radius: var(--radius-md);
  border: 1px solid var(--c-border-2);
}
.about-image__badge {
  position: absolute;
  bottom: -1.25rem; right: -1.25rem;
  background: var(--c-bg);
  border: 1px solid var(--c-ac-2);
  border-radius: var(--radius-md);
  padding: 1rem 1.4rem;
  text-align: center;
  box-shadow: var(--shadow-lg);
}
.about-image__badge-value {
  display: block;
  font-family: var(--font-display);
  font-size: 1.7rem;
  font-weight: 800;
  color: var(--c-ac-3);
  line-height: 1;
}
.about-image__badge-label {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-text-low);
}
.about-content p { color: var(--c-text-low); font-size: 0.95rem; line-height: 1.75; margin-bottom: 1rem; }
.about-content h2 { margin-bottom: 1.1rem; }
.about-tiles {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin: 1.3rem 0;
}
.about-tile {
  padding: 0.9rem 1.1rem;
  border-right: 1px solid var(--c-border);
  border-bottom: 1px solid var(--c-border);
}
.about-tile:nth-child(2n) { border-right: none; }
.about-tile:nth-child(3), .about-tile:nth-child(4) { border-bottom: none; }
.about-tile__label {
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-ac);
  margin-bottom: 0.2rem;
}
.about-tile__value { font-size: 0.85rem; font-weight: 700; color: var(--c-text); }

/* ============================================================
   FEATURED PROJECTS — diagonal cards + brushed side panel + carousel
   ============================================================ */
.projects-section { position: relative; overflow: hidden; }
.projects-section .container-inner { position: relative; z-index: 2; }
.projects-side-panel {
  position: absolute;
  right: 0; top: 0; bottom: 0;
  width: 26%;
  clip-path: polygon(40% 0, 100% 0, 100% 100%, 0% 100%);
  z-index: 1;
  pointer-events: none;
}
.carousel-controls { display: flex; gap: 0.5rem; }
.carousel-btn {
  width: 38px; height: 38px;
  border-radius: 50%;
  border: 1px solid var(--c-ac-2);
  color: var(--c-ac);
  display: flex; align-items: center; justify-content: center;
  transition: all var(--t-base);
  background: transparent;
}
.carousel-btn:hover { background: var(--c-ac); color: var(--c-bg); border-color: var(--c-ac); }
.carousel-btn:disabled { opacity: 0.3; cursor: default; }
.carousel-btn:disabled:hover { background: transparent; color: var(--c-ac); }

.projects-carousel { overflow: hidden; position: relative; z-index: 2; }
.projects-track {
  display: flex;
  gap: 1.25rem;
  transition: transform var(--t-slow);
}
.project-card {
  flex: 0 0 calc((100% - 2.5rem) / 3);
  background: var(--c-bg-3);
  border: 1px solid var(--c-border);
  clip-path: polygon(0 0, 100% 0, 100% 88%, 90% 100%, 0 100%);
  transition: border-color var(--t-base);
}
.project-card:hover { border-color: var(--c-ac-2); }
.project-card__image {
  height: 200px;
  position: relative;
  background-color: var(--c-bg-4);
}
.project-card__image::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(13,14,16,0.55));
}
.project-card__body { padding: 1.5rem; }
.project-card__category {
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--c-ac);
  margin-bottom: 0.5rem;
}
.project-card__title {
  font-size: 1.15rem;
  text-transform: uppercase;
  margin-bottom: 0.6rem;
}
.project-card__excerpt {
  font-size: 0.85rem;
  color: var(--c-text-low);
  line-height: 1.65;
  margin-bottom: 1rem;
}
.project-card__link {
  font-family: var(--font-display);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-ac);
}
.project-card__link:hover { color: var(--c-ac-3); }

.carousel-dots {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1.75rem;
  position: relative; z-index: 2;
}
.carousel-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--c-bg-5);
  border: 1px solid var(--c-border-2);
  transition: all var(--t-base);
  cursor: pointer;
}
.carousel-dot.active { background: var(--c-ac); border-color: var(--c-ac); width: 22px; border-radius: 4px; }

/* ============================================================
   CTA BANNER — brushed black metal
   ============================================================ */
.cta-banner {
  position: relative;
  background-color: #161719;
  background-image:
    repeating-linear-gradient(90deg, rgba(255,255,255,.02) 0px, rgba(255,255,255,.02) 1px, transparent 1px, transparent 3px),
    linear-gradient(115deg, rgba(255,255,255,.01) 0%, rgba(255,255,255,.06) 45%, rgba(255,255,255,.01) 60%);
}
.cta-banner__inner {
  max-width: 640px;
  margin: 0 auto;
  padding: clamp(3rem,6vw,5rem) clamp(1.25rem,4vw,3rem);
  text-align: center;
}
.cta-banner__inner p { color: var(--c-text-low); font-size: 1rem; margin-bottom: 2rem; }
.cta-banner__actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

/* ============================================================
   FOOTER
   ============================================================ */
.cookie-banner {
  position: fixed; bottom: 0; left: 0; right: 0;
  background: var(--c-bg-4);
  border-top: 1px solid var(--c-border-2);
  z-index: 2000;
  padding: 1rem clamp(1rem,4vw,3rem);
  transform: translateY(100%);
  transition: transform var(--t-slow);
  box-shadow: var(--shadow-xl);
}
.cookie-banner.visible { transform: translateY(0); }
.cookie-banner__inner {
  max-width: var(--content-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.cookie-banner p { font-size: 0.85rem; color: var(--c-text-low); margin: 0; }
.cookie-banner a { color: var(--c-ac); text-decoration: underline; }
.cookie-actions { display: flex; gap: 0.75rem; flex-shrink: 0; }
.cookie-btn-accept, .cookie-btn-reject {
  font-family: var(--font-display);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.6rem 1.2rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--c-ac-2);
  color: var(--c-ac);
  background: transparent;
}
.cookie-btn-accept { background: var(--c-ac-3); color: var(--c-bg); border-color: #fff; }

.footer-main {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1.3fr;
  gap: clamp(1.5rem,4vw,3rem);
  padding: clamp(3rem,6vw,4.5rem) clamp(1rem,4vw,3rem) clamp(2rem,4vw,3rem);
  max-width: var(--wide-width);
  margin: 0 auto;
}
.footer-brand .site-logo-text { color: var(--c-text); }
.footer-brand .site-logo-text span { color: var(--c-ac-2); }
.footer-brand p {
  color: var(--c-text-dim);
  font-size: 0.86rem;
  line-height: 1.7;
  margin: 0.9rem 0 1rem;
  max-width: 280px;
}
.footer-certs { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 1rem; }
.cert-badge {
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--c-text-low);
  border: 1px solid var(--c-border-2);
  border-radius: var(--radius-sm);
  padding: 0.3rem 0.6rem;
}
.footer-socials { display: flex; gap: 0.6rem; }
.footer-social {
  width: 34px; height: 34px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--c-border-2);
  display: flex; align-items: center; justify-content: center;
  color: var(--c-text-low);
  transition: all var(--t-base);
}
.footer-social:hover { color: var(--c-ac-3); border-color: var(--c-ac-2); }

.footer-heading {
  color: rgba(200,202,204,0.2);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--c-border);
  padding-bottom: 0.7rem;
  margin-bottom: 0.9rem;
}
.footer-links { display: flex; flex-direction: column; gap: 0.45rem; }
.footer-links a {
  font-size: 0.86rem;
  color: var(--c-text-dim);
  transition: all var(--t-fast);
  display: inline-block;
}
.footer-links a:hover { color: var(--c-ac-3); padding-left: 3px; }

.footer-contact { display: flex; flex-direction: column; gap: 0.75rem; }
.footer-contact-item {
  display: flex; gap: 0.7rem; align-items: flex-start;
  font-size: 0.86rem;
  color: var(--c-text-dim);
}
.footer-contact-item svg { flex-shrink: 0; margin-top: 0.15rem; color: var(--c-ac-2); opacity: 0.6; }
.footer-contact-item a { color: var(--c-text-dim); }
.footer-contact-item a:hover { color: var(--c-ac-3); }

.footer-bottom {
  border-top: 1px solid var(--c-border);
  padding: 1rem clamp(1rem,4vw,3rem);
  max-width: var(--wide-width);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.footer-bottom p { font-size: 0.75rem; color: rgba(200,202,204,0.18); margin: 0; }
.footer-bottom-links { display: flex; gap: 1.25rem; }
.footer-bottom-links a { font-size: 0.75rem; color: rgba(200,202,204,0.18); }
.footer-bottom-links a:hover { color: var(--c-ac-3); }

.back-to-top {
  position: fixed;
  bottom: 1.5rem; right: 1.5rem;
  width: 46px; height: 46px;
  border-radius: 50%;
  background: var(--c-ac-3);
  color: var(--c-bg);
  border: 1px solid #fff;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--shadow-lg);
  opacity: 0; visibility: hidden;
  transform: translateY(10px);
  transition: all var(--t-base);
  z-index: 900;
}
.back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: var(--c-ac); }

/* ============================================================
   ANIMATIONS
   ============================================================ */
.animate-on-scroll { opacity: 0; transform: translateY(24px); transition: all 0.7s var(--ease); }
.animate-on-scroll.is-visible { opacity: 1; transform: translateY(0); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1024px) {
  .services-grid { grid-template-columns: 1fr; }
  .service-card { border-right: none; border-bottom: 1px solid var(--c-border); }
  .service-card:last-child { border-bottom: none; }
  .about-split { grid-template-columns: 1fr; }
  .about-image { max-width: 480px; margin: 0 auto; }
  .stats-bar__inner { grid-template-columns: repeat(2,1fr); gap: 1.75rem; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
  .topbar { justify-content: center; height: 28px; }
  .topbar .lang-item { font-size: 0.62rem; padding: 0 0.5rem; }
  .header-inner { padding: 0 1rem; }
  .site-logo-text { font-size: 1.1rem; }
  .site-logo-subtitle { display: none; }

  .hero-content { padding-top: 5rem; }
  .hero-stats { gap: 1.25rem; }

  .partners-bar__label { display: none; }

  /* Featured Projects: remove diagonal cuts + side panel on mobile */
  .projects-side-panel { display: none; }
  .project-card { clip-path: none; flex: 0 0 100%; }
  .projects-track { flex-direction: column; }

  .cards, .projects-track { gap: 1rem; }

  .footer-main { grid-template-columns: 1fr; gap: 2rem; padding: 2.5rem 1.25rem; }
  .footer-brand p { max-width: none; }
  .footer-bottom { flex-direction: column; align-items: flex-start; text-align: left; }

  .cookie-banner__inner { flex-direction: column; align-items: flex-start; }

  .back-to-top { width: 42px; height: 42px; bottom: 1rem; right: 1rem; }
}

@media (max-width: 480px) {
  .hero-actions .btn--silver,
  .hero-actions .btn--full { width: 100%; min-width: 0; }
  .stats-bar__inner { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
   BUTTON ALIASES (compat with inner-page templates)
   ============================================================ */
.btn--primary { /* alias -> outline silver on dark bg */
  border-color: var(--c-ac-2);
  color: var(--c-ac);
  background: transparent;
}
.btn--primary:hover { background: var(--c-ac); color: var(--c-bg); border-color: var(--c-ac); }
.btn--outline-white {
  border-color: rgba(255,255,255,0.3);
  color: #fff;
  background: transparent;
}
.btn--outline-white:hover { border-color: #fff; background: rgba(255,255,255,0.08); color: #fff; }

.page-hero {
  background: linear-gradient(180deg, var(--c-hdr) 0%, var(--c-bg-3) 60%, var(--c-bg-2) 100%);
  border-bottom: 1px solid var(--c-border);
  padding: clamp(4rem,8vw,6rem) clamp(1rem,4vw,3rem) clamp(3rem,5vw,4rem);
  position: relative;
  overflow: hidden;
}
.page-hero::before {
  content: '';
  position: absolute; inset: 0;
  background: url('assets/images/page-hero-bg.jpg') center/cover;
  opacity: 0.06;
  mix-blend-mode: overlay;
}
.page-hero h1, .page-hero .eyebrow { position: relative; z-index: 1; }
.page-hero h1 { color: var(--c-ac-3); }
.page-hero__inner { position: relative; z-index: 1; max-width: var(--content-width); margin: 0 auto; }
.page-hero h1 { font-size: clamp(2rem,5vw,4rem); margin-bottom: 1rem; }
.page-hero p { color: var(--c-text-low); max-width: 580px; font-size: 1.05rem; }
.page-hero__badges { display: flex; gap: 0.6rem; flex-wrap: wrap; margin-top: 1.5rem; }
.page-hero__badge {
  display: inline-flex; align-items: center; gap: 0.35rem;
  background: rgba(255,255,255,0.04); border: 1px solid var(--c-border-2);
  color: var(--c-text-low); padding: 0.35rem 0.8rem; border-radius: 999px;
  font-family: var(--font-display); font-size: 0.68rem; font-weight: 600;
  letter-spacing: 0.06em; text-transform: uppercase;
}

/* Breadcrumb */
.breadcrumb {
  background: var(--c-bg-2);
  border-bottom: 1px solid var(--c-border);
  padding: 0.7rem clamp(1rem,4vw,3rem);
}
.breadcrumb__inner {
  max-width: var(--content-width); margin: 0 auto;
  display: flex; align-items: center; gap: 0.5rem;
  font-size: 0.75rem; color: var(--c-text-low);
  font-family: var(--font-display); font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em;
}
.breadcrumb__inner a { color: var(--c-text-low); transition: color var(--t-fast); text-decoration: none; }
.breadcrumb__inner a:hover { color: var(--c-ac); }
.breadcrumb__sep { color: var(--c-border-2); }
.breadcrumb__current { color: var(--c-text-mid); }


/* ============================================================
   MACHINE CARDS / TECH SPECS
   ============================================================ */
.machine-card { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; }
.machine-card__image { aspect-ratio: 16/9; background: var(--c-bg-4); background-size: cover; background-position: center; }
.machine-card__body { padding: 2rem; }
.machine-card__brand { font-family: var(--font-display); font-size: 0.66rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-ac); margin-bottom: 0.25rem; }
.machine-card__title { font-family: var(--font-display); font-size: 1.35rem; font-weight: 700; text-transform: uppercase; margin-bottom: 1.25rem; }
.machine-specs { width: 100%; border-collapse: collapse; font-size: 0.84rem; }
.machine-specs tr { border-bottom: 1px solid var(--c-border); }
.machine-specs tr:last-child { border-bottom: none; }
.machine-specs td { padding: 0.5rem 0; color: var(--c-text-low); }
.machine-specs td:first-child { font-weight: 600; color: var(--c-text-mid); width: 45%; padding-right: 1rem; }

.tech-specs { width: 100%; border-collapse: collapse; font-size: 0.86rem; border: 1px solid var(--c-border); border-radius: var(--radius-md); overflow: hidden; }
.tech-specs thead th { background: var(--c-bg-4); color: var(--c-text-low); padding: 0.7rem 1rem; font-family: var(--font-display); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; text-align: left; border-bottom: 1px solid var(--c-border); }
.tech-specs tbody td { padding: 0.6rem 1rem; border-bottom: 1px solid var(--c-border); color: var(--c-text-low); }
.tech-specs tbody tr:last-child td { border-bottom: none; }
.tech-specs tbody tr:nth-child(odd) td { background: rgba(255,255,255,0.02); }
.tech-specs tbody td:first-child { font-weight: 600; color: var(--c-text-mid); }
.tech-specs .highlight { color: var(--c-ac-3); font-weight: 700; }


/* ============================================================
   CONTACT FORM
   ============================================================ */
.contact-layout { display: grid; grid-template-columns: 1fr 400px; gap: 3rem; align-items: start; }
.contact-form-wrap { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 2.5rem; }
.form-title { font-family: var(--font-display); font-size: 1.5rem; font-weight: 700; text-transform: uppercase; margin-bottom: 0.4rem; }
.form-subtitle { color: var(--c-text-low); font-size: 0.88rem; margin-bottom: 2rem; }
.form-row { margin-bottom: 1.1rem; }
.form-row--2col { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.form-group { display: flex; flex-direction: column; gap: 0.3rem; }
.form-label { font-size: 0.8rem; font-weight: 600; color: var(--c-text-mid); }
.form-required { color: var(--c-ac); }
.form-input {
  width: 100%; padding: 0.75rem 0.9rem;
  border: 1.5px solid var(--c-border-2); border-radius: var(--radius-md);
  font-family: var(--font-body); font-size: 0.93rem; color: var(--c-text);
  background: var(--c-bg-4); transition: border-color var(--t-fast), box-shadow var(--t-fast); box-sizing: border-box;
}
.form-input:focus { outline: none; border-color: var(--c-ac); box-shadow: 0 0 0 3px rgba(145,149,152,0.1); }
.form-input::placeholder { color: var(--c-text-dim); opacity: 0.7; }
.form-input.has-error { border-color: #EF4444; }
.form-error { font-size: 0.75rem; color: #EF4444; }
.form-textarea { resize: vertical; min-height: 120px; }
.form-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236c7074' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem; cursor: pointer; }
.form-checkbox-label { display: flex; align-items: flex-start; gap: 0.7rem; cursor: pointer; }
.form-checkbox { width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; accent-color: var(--c-ac); cursor: pointer; }
.form-checkbox-text { font-size: 0.8rem; color: var(--c-text-low); line-height: 1.5; }
.form-checkbox-text a { color: var(--c-ac); }
.form-char-count { font-size: 0.7rem; color: var(--c-text-low); text-align: right; margin-top: 0.25rem; }
.form-honeypot { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }
.form-messages { margin-bottom: 1rem; }
.form-message { padding: 0.85rem 1rem; border-radius: var(--radius-md); font-size: 0.85rem; display: flex; align-items: flex-start; gap: 0.5rem; }
.form-message--error { background: rgba(239,68,68,0.08); border: 1px solid rgba(239,68,68,0.25); color: #FCA5A5; }
.form-message--success { background: rgba(34,197,94,0.08); border: 1px solid rgba(34,197,94,0.2); color: #86EFAC; }
.btn-submit { width: 100%; justify-content: center; }
.btn-loading .spin { animation: spin 0.8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* Contact sidebar */
.contact-info-sidebar { display: flex; flex-direction: column; gap: 1.25rem; }
.contact-info-card { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; }
.contact-info-card__header { background: var(--c-bg-4); border-bottom: 1px solid var(--c-border); padding: 0.9rem 1.25rem; font-family: var(--font-display); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-text-low); }
.contact-info-items { padding: 0.25rem 0; }
.contact-info-item { display: flex; align-items: flex-start; gap: 0.85rem; padding: 0.8rem 1.25rem; border-bottom: 1px solid var(--c-border); transition: background var(--t-fast); }
.contact-info-item:last-child { border-bottom: none; }
.contact-info-item:hover { background: var(--c-bg-4); }
.contact-info-item__icon { color: var(--c-ac); flex-shrink: 0; margin-top: 2px; opacity: 0.7; }
.contact-info-item__label { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--c-text-dim); margin-bottom: 0.15rem; }
.contact-info-item__value { font-size: 0.88rem; color: var(--c-text-mid); line-height: 1.5; }
.contact-info-item__value a { color: var(--c-text-mid); transition: color var(--t-fast); text-decoration: none; }
.contact-info-item__value a:hover { color: var(--c-ac); }
.contact-map { border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--c-border); }
.contact-map iframe { display: block; width: 100%; }

/* Departments grid */
.departments-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin-bottom: 3rem; }
.dept-card { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); padding: 1.5rem; text-align: center; transition: all var(--t-base); }
.dept-card:hover { border-color: var(--c-ac-2); background: var(--c-bg-4); }
.dept-card__icon { color: var(--c-ac); margin-bottom: 0.75rem; opacity: 0.7; }
.dept-card__label { font-family: var(--font-display); font-size: 0.66rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--c-text-dim); margin-bottom: 0.3rem; }
.dept-card__value { font-size: 0.88rem; font-weight: 600; color: var(--c-text-mid); }
.dept-card__value a { color: var(--c-ac); text-decoration: none; }
.dept-card__note { font-size: 0.75rem; color: var(--c-text-low); margin-top: 0.2rem; }

/* Tag badge used in project cards */
.tag-badge {
  display: inline-block;
  padding: 0.2rem 0.6rem;
  background: var(--c-bg-4);
  border: 1px solid var(--c-border-2);
  border-radius: var(--radius-sm);
  font-family: var(--font-display);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--c-text-low);
}


/* ============================================================
   GALLERY
   ============================================================ */
.gallery-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 0.6rem; }
.gallery-item {
  position: relative; aspect-ratio: 4/3; overflow: hidden;
  border-radius: var(--radius-md); cursor: pointer;
  background: var(--c-bg-3); background-size: cover; background-position: center;
  border: 1px solid var(--c-border);
}
.gallery-item::after { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,0); transition: background var(--t-base); }
.gallery-item:hover::after { background: rgba(0,0,0,0.45); }
.gallery-item__caption {
  position: absolute; bottom: 0; left: 0; right: 0;
  padding: 0.75rem; background: linear-gradient(transparent,rgba(0,0,0,0.75));
  color: var(--c-text); font-family: var(--font-display); font-size: 0.72rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em;
  transform: translateY(100%); transition: transform var(--t-base); z-index: 1;
}
.gallery-item:hover .gallery-item__caption { transform: translateY(0); }

/* Lightbox */
.brkic-lightbox { position: fixed; inset: 0; background: rgba(0,0,0,0.95); z-index: 9999; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: all var(--t-base); }
.brkic-lightbox.active { opacity: 1; visibility: visible; }
.lightbox-img { max-width: 90vw; max-height: 85vh; object-fit: contain; border-radius: var(--radius-md); }
.lightbox-close { position: absolute; top: 1.5rem; right: 1.5rem; color: var(--c-text); cursor: pointer; background: rgba(255,255,255,0.08); border: none; border-radius: 50%; width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; transition: background var(--t-fast); }
.lightbox-close:hover { background: rgba(255,255,255,0.18); }
.lightbox-prev, .lightbox-next { position: absolute; top: 50%; transform: translateY(-50%); color: var(--c-text); cursor: pointer; background: rgba(255,255,255,0.08); border: none; border-radius: 50%; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; transition: background var(--t-fast); }
.lightbox-prev { left: 1.5rem; }
.lightbox-next { right: 1.5rem; }
.lightbox-prev:hover, .lightbox-next:hover { background: rgba(255,255,255,0.18); }
.lightbox-caption { position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); color: var(--c-text-low); font-family: var(--font-display); font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; white-space: nowrap; }


/* ============================================================
   EU PROJEKTI
   ============================================================ */
.eu-notice { background: rgba(37,99,235,0.08); border: 1px solid rgba(37,99,235,0.2); border-left: 3px solid #3B82F6; border-radius: var(--radius-md); padding: 1.1rem 1.4rem; display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 2rem; font-size: 0.86rem; color: #93C5FD; line-height: 1.6; }
.eu-project-card { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; margin-bottom: 2rem; }
.eu-project-card__header { background: var(--c-bg-4); border-bottom: 1px solid var(--c-border); padding: 1.1rem 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.eu-project-card__ref { font-family: var(--font-display); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--c-text-low); }
.eu-project-card__status { font-family: var(--font-display); font-size: 0.65rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.28rem 0.7rem; border-radius: 999px; }
.eu-project-card__status--active { background: rgba(34,197,94,0.1); color: #86EFAC; border: 1px solid rgba(34,197,94,0.2); }
.eu-project-card__status--done   { background: var(--c-bg); color: var(--c-text-low); border: 1px solid var(--c-border); }
.eu-project-card__body { padding: 1.75rem; }
.eu-project-card__title { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; text-transform: uppercase; margin-bottom: 1rem; }
.eu-project-card__meta { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; margin-bottom: 1.25rem; padding: 1rem; background: var(--c-bg-4); border-radius: var(--radius-md); border: 1px solid var(--c-border); }
.eu-meta-item__label { font-size: 0.66rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--c-text-dim); margin-bottom: 0.2rem; }
.eu-meta-item__value { font-size: 0.88rem; font-weight: 600; color: var(--c-text-mid); }
.eu-meta-item__value em { font-style: normal; color: var(--c-ac-3); }
.eu-logo-bar { display: flex; align-items: center; gap: 0.75rem; padding: 0.9rem 1.5rem; background: var(--c-bg-4); border-top: 1px solid var(--c-border); font-size: 0.72rem; color: var(--c-text-low); font-weight: 600; flex-wrap: wrap; }


/* ============================================================
   BLOG / ARCHIVE
   ============================================================ */
.blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; }
.post-card { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; display: flex; flex-direction: column; transition: box-shadow var(--t-base), transform var(--t-base), border-color var(--t-base); }
.post-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); border-color: var(--c-border-2); }
.post-card__image { aspect-ratio: 16/9; background: var(--c-bg-4); background-size: cover; background-position: center; flex-shrink: 0; }
.post-card__body { padding: 1.5rem; flex: 1; display: flex; flex-direction: column; }
.post-card__meta { display: flex; align-items: center; gap: 1rem; font-family: var(--font-display); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--c-text-low); margin-bottom: 0.7rem; }
.post-card__cat { color: var(--c-ac); }
.post-card__title { font-family: var(--font-display); font-size: 1.05rem; font-weight: 700; text-transform: uppercase; color: var(--c-text); margin-bottom: 0.7rem; line-height: 1.3; flex: 1; }
.post-card__excerpt { font-size: 0.86rem; color: var(--c-text-low); line-height: 1.6; margin-bottom: 1rem; }
.post-card__link { font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--c-text-low); display: inline-flex; align-items: center; gap: 0.4rem; border-bottom: 1px solid var(--c-border-2); padding-bottom: 1px; align-self: flex-start; text-decoration: none; }
.post-card:hover .post-card__link { color: var(--c-ac); border-bottom-color: var(--c-ac); }

.pagination { display: flex; align-items: center; justify-content: center; gap: 0.4rem; margin-top: 3rem; }
.page-numbers { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid var(--c-border-2); border-radius: var(--radius-sm); font-family: var(--font-display); font-size: 0.8rem; font-weight: 700; color: var(--c-text-low); transition: all var(--t-fast); text-decoration: none; background: var(--c-bg-3); }
.page-numbers:hover { border-color: var(--c-ac); color: var(--c-ac); }
.page-numbers.current { background: var(--c-ac); border-color: var(--c-ac); color: #111; }

.single-layout { display: grid; grid-template-columns: 1fr 300px; gap: 3rem; align-items: start; }
.post-content h2, .post-content h3 { margin: 2rem 0 1rem; }
.post-content p { color: var(--c-text-low); line-height: 1.8; margin-bottom: 1.25rem; }
.post-content ul, .post-content ol { padding-left: 1.5rem; margin-bottom: 1.25rem; color: var(--c-text-low); }
.post-content li { margin-bottom: 0.4rem; line-height: 1.7; }
.post-content img { border-radius: var(--radius-md); margin: 2rem 0; }
.post-content blockquote { border-left: 3px solid var(--c-ac); padding: 1rem 1.5rem; background: var(--c-bg-3); border-radius: 0 var(--radius-md) var(--radius-md) 0; margin: 1.5rem 0; font-style: italic; color: var(--c-text-low); }
.post-sidebar { position: sticky; top: calc(var(--header-h) + 1.5rem); }
.sidebar-widget { background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-lg); overflow: hidden; margin-bottom: 1.25rem; }
.sidebar-widget__title { background: var(--c-bg-4); border-bottom: 1px solid var(--c-border); padding: 0.7rem 1.1rem; font-family: var(--font-display); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--c-text-low); }
.sidebar-widget__body { padding: 1.1rem; }

.search-form-large { display: flex; border: 1.5px solid var(--c-border-2); border-radius: var(--radius-md); overflow: hidden; background: var(--c-bg-3); }
.search-form-large input { flex: 1; padding: 0.9rem 1.1rem; border: none; font-family: var(--font-body); font-size: 0.95rem; color: var(--c-text); background: transparent; }
.search-form-large input:focus { outline: none; }
.search-form-large input::placeholder { color: var(--c-text-dim); }
.search-form-large button { background: var(--c-ac); color: #111; border: none; padding: 0.9rem 1.4rem; font-family: var(--font-display); font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; cursor: pointer; transition: background var(--t-fast); display: flex; align-items: center; gap: 0.4rem; }
.search-form-large button:hover { background: var(--c-ac-3); }

/* 404 */
.error-404__number { font-family: var(--font-display); font-size: clamp(6rem,20vw,14rem); font-weight: 800; color: var(--c-bg-4); line-height: 1; display: block; }
.error-404__title { font-size: clamp(1.5rem,4vw,2.5rem); margin-bottom: 1rem; }
.error-404__text { color: var(--c-text-low); max-width: 480px; margin: 0 auto 2rem; }
.quick-links { display: grid; grid-template-columns: repeat(5,1fr); gap: 0.75rem; margin: 2rem auto; max-width: 700px; }
.quick-link { display: block; padding: 0.85rem 0.5rem; background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-md); text-align: center; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--c-text-low); transition: all var(--t-fast); text-decoration: none; }
.quick-link:hover { border-color: var(--c-ac); color: var(--c-ac); }

/* Cookie banner */
.cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9998; background: var(--c-bg-3); border-top: 1px solid var(--c-border-2); color: var(--c-text-low); padding: 1rem clamp(1rem,4vw,3rem); display: none; box-shadow: 0 -4px 30px rgba(0,0,0,0.5); }
.cookie-banner.visible { display: flex; }
.cookie-banner__inner { max-width: var(--content-width); margin: 0 auto; width: 100%; display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; }
.cookie-banner p { margin: 0; font-size: 0.82rem; flex: 1; }
.cookie-banner a { color: var(--c-ac); }
.cookie-actions { display: flex; gap: 0.6rem; flex-shrink: 0; }
.cookie-btn-accept { background: var(--c-ac); color: #111; border: none; padding: 0.55rem 1.1rem; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; border-radius: var(--radius-sm); cursor: pointer; transition: background var(--t-fast); }
.cookie-btn-accept:hover { background: var(--c-ac-3); }
.cookie-btn-reject { background: transparent; color: var(--c-text-low); border: 1px solid var(--c-border-2); padding: 0.55rem 1.1rem; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; border-radius: var(--radius-sm); cursor: pointer; transition: all var(--t-fast); }
.cookie-btn-reject:hover { background: var(--c-bg-4); color: var(--c-text); }

/* Back to top */
.back-to-top { position: fixed; bottom: 1.75rem; right: 1.75rem; width: 42px; height: 42px; background: var(--c-ac); color: #111; border: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(8px); transition: all var(--t-base); z-index: 500; box-shadow: var(--shadow-md); }
.back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: var(--c-ac-3); transform: translateY(-2px); }



/* ============================================================
   404 PAGE
   ============================================================ */
.error-404__number { font-family: var(--font-display); font-size: clamp(6rem,20vw,14rem); font-weight: 800; color: var(--c-bg-4); line-height: 1; display: block; }
.error-404__title { font-size: clamp(1.5rem,4vw,2.5rem); margin-bottom: 1rem; }
.error-404__text { color: var(--c-text-low); max-width: 480px; margin: 0 auto 2rem; }
.quick-links { display: grid; grid-template-columns: repeat(5,1fr); gap: 0.75rem; margin: 2rem auto; max-width: 700px; }
.quick-link { display: block; padding: 0.85rem 0.5rem; background: var(--c-bg-3); border: 1px solid var(--c-border); border-radius: var(--radius-md); text-align: center; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--c-text-low); transition: all var(--t-fast); text-decoration: none; }
.quick-link:hover { border-color: var(--c-ac); color: var(--c-ac); }

/* Cookie banner */
.cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9998; background: var(--c-bg-3); border-top: 1px solid var(--c-border-2); color: var(--c-text-low); padding: 1rem clamp(1rem,4vw,3rem); display: none; box-shadow: 0 -4px 30px rgba(0,0,0,0.5); }
.cookie-banner.visible { display: flex; }
.cookie-banner__inner { max-width: var(--content-width); margin: 0 auto; width: 100%; display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; }
.cookie-banner p { margin: 0; font-size: 0.82rem; flex: 1; }
.cookie-banner a { color: var(--c-ac); }
.cookie-actions { display: flex; gap: 0.6rem; flex-shrink: 0; }
.cookie-btn-accept { background: var(--c-ac); color: #111; border: none; padding: 0.55rem 1.1rem; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; border-radius: var(--radius-sm); cursor: pointer; transition: background var(--t-fast); }
.cookie-btn-accept:hover { background: var(--c-ac-3); }
.cookie-btn-reject { background: transparent; color: var(--c-text-low); border: 1px solid var(--c-border-2); padding: 0.55rem 1.1rem; font-family: var(--font-display); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; border-radius: var(--radius-sm); cursor: pointer; transition: all var(--t-fast); }
.cookie-btn-reject:hover { background: var(--c-bg-4); color: var(--c-text); }

/* Back to top */
.back-to-top { position: fixed; bottom: 1.75rem; right: 1.75rem; width: 42px; height: 42px; background: var(--c-ac); color: #111; border: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(8px); transition: all var(--t-base); z-index: 500; box-shadow: var(--shadow-md); }
.back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: var(--c-ac-3); transform: translateY(-2px); }
