/* ============================================================
   VF Group — yeganə dizayn qatı. İstiqamət: A (Sənaye dəqiqliyi)
   Spec: docs/superpowers/specs/2026-09-28-vfgroup-redesign-design.md

   @font-face blokları _development/fetch_fonts.py tərəfindən yaradılıb.
   Hər çəki üçün iki subset var: latin (ı ö ü ç) və latin-ext (ə ğ ş İ).
   ============================================================ */

@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/oswald-400-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/oswald-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/oswald-600-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/oswald-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/oswald-700-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/oswald-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/inter-300-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/inter-300-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/inter-400-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/inter-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/inter-500-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/inter-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/inter-600-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/inter-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/inter-700-latinext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/inter-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --ink:#15181c; --ink-2:#1c2025; --ink-3:#111317;
  --line:#262b31; --line-2:#3a4148;
  --accent:#ff8a1d; --navy:#214c7f;
  --text:#e8eaed; --muted:#98a1ab; --muted-2:#5d6670;

  --f-head:'Oswald', Impact, 'Arial Narrow', sans-serif;
  --f-body:'Inter', -apple-system, system-ui, sans-serif;

  --t1:11px; --t2:12px; --t3:14px; --t4:15px; --t5:19px; --t6:30px; --t7:46px;
  --s1:6px; --s2:10px; --s3:16px; --s4:22px; --s5:32px; --s6:58px;

  --wrap:1200px;
}

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

html { -webkit-text-size-adjust:100%; }

body {
  margin:0; background:var(--ink); color:var(--text);
  font:400 var(--t3)/1.72 var(--f-body);
  overflow-wrap:anywhere;          /* uzun Azərbaycan sözləri daşmasın */
}

img, iframe { max-width:100%; }
img { height:auto; display:block; }
a { color:inherit; }

h1, h2, h3, h4, h5 {
  font-family:var(--f-head); text-transform:uppercase; margin:0;
  overflow-wrap:anywhere; hyphens:auto;
}

p { margin:0; }

/* ---------- düzüm primitivləri (Bootstrap əvəzi) ---------- */
.vf-container { max-width:var(--wrap); margin-inline:auto; padding-inline:var(--s5); }
.vf-grid { display:grid; gap:0; }
.vf-grid[data-cols="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vf-grid[data-cols="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.vf-grid[data-cols="4"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.vf-row { display:flex; align-items:center; gap:var(--s3); flex-wrap:wrap; }
.vf-stack > * + * { margin-top:var(--s4); }
.vf-only-sr {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* ================= topbar ================= */
.vf-topbar { background:var(--ink-3); border-bottom:1px solid var(--line); }
.vf-topbar-in {
  /* Header tam enə yayılır — loqo və əlaqə zolağı ekranın kənarı ilə düzlənir.
     Məzmun blokları isə .vf-container ilə --wrap eninə sığışdırılır. */
  max-width:none; padding:var(--s2) var(--s5);
  display:flex; gap:var(--s5); align-items:center; flex-wrap:wrap;
  font:400 var(--t2)/1.5 var(--f-body); color:var(--muted);
}
.vf-tb-item { display:inline-flex; align-items:center; gap:var(--s1); text-decoration:none; color:inherit; }
.vf-tb-item i { color:var(--accent); font-size:var(--t2); }
.vf-tb-item a { color:var(--text); text-decoration:none; }
.vf-tb-item a:hover { color:var(--accent); }
.vf-tb-label { color:var(--muted-2); }

/* ================= navbar ================= */
.vf-nav { background:var(--ink); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:40; }
.vf-nav-in {
  max-width:none; padding:var(--s3) var(--s5);
  display:flex; align-items:center; gap:var(--s4); flex-wrap:nowrap;
}
.vf-logo { display:inline-flex; align-items:center; gap:var(--s2); text-decoration:none; }
.vf-logo img { width:38px; height:38px; object-fit:contain; }
.vf-logo span {
  font:700 var(--t5)/1 var(--f-head); letter-spacing:.14em; text-transform:uppercase;
  color:var(--text); white-space:nowrap;
}
.vf-menu {
  /* Header tam enlidir: loqo solda, düymə sağda, menyu aradaki bütün sahəni tutur.
     `margin-left:auto` işlədilsəydi menyu düymə ilə birlikdə sağa yığılar və
     loqodan sonra geniş ekranda 600px+ boşluq qalardı. */
  flex:1 1 auto; display:flex; flex-wrap:nowrap; justify-content:center;
  gap:clamp(var(--s3), 2.2vw, var(--s5));
  margin:0; padding:0; list-style:none;
}
.vf-menu a {
  display:inline-block; position:relative; padding:var(--s2) 0; text-decoration:none;
  font:500 var(--t1)/1 var(--f-body); letter-spacing:.03em; text-transform:uppercase;
  color:var(--muted); white-space:nowrap;
}
.vf-menu a:hover { color:var(--text); }
.vf-menu a[aria-current] { color:var(--text); }
.vf-menu a[aria-current]::after {
  content:''; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--accent);
}
.vf-btn {
  display:inline-block; text-decoration:none; white-space:nowrap; cursor:pointer;
  font:700 var(--t1)/1 var(--f-body); letter-spacing:.12em; text-transform:uppercase;
  padding:13px 20px; border:1px solid transparent;
}
.vf-btn--solid { background:var(--accent); color:var(--ink); }
.vf-btn--solid:hover { background:#ff9a3c; }
.vf-btn--ghost { border-color:var(--line-2); color:var(--text); }
.vf-btn--ghost:hover { border-color:var(--accent); color:var(--accent); }
.vf-burger {
  display:none; width:40px; height:40px; margin-left:auto; position:relative;
  background:none; border:1px solid var(--line-2); cursor:pointer;
}
.vf-burger i { position:absolute; left:11px; right:11px; height:1.5px; background:var(--text); transition:.2s; }
.vf-burger i:nth-child(1) { top:13px; }
.vf-burger i:nth-child(2) { top:19px; }
.vf-burger i:nth-child(3) { top:25px; }

/* ================= footer ================= */
.vf-foot { background:var(--ink-3); border-top:2px solid var(--accent); margin-top:var(--s6); }
.vf-foot-in {
  max-width:var(--wrap); margin-inline:auto;
  padding:var(--s6) var(--s5) var(--s5);
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:var(--s5);
}
.vf-fh {
  font:600 var(--t1)/1 var(--f-body); letter-spacing:.2em; text-transform:uppercase;
  color:var(--text); margin:0 0 var(--s3);
}
.vf-flist { list-style:none; padding:0; margin:0; }
.vf-flist li { margin-bottom:var(--s2); }
.vf-flist a, .vf-flist span { font:400 var(--t2)/1.7 var(--f-body); color:var(--muted); text-decoration:none; }
.vf-flist a:hover { color:var(--accent); }
.vf-wa {
  display:inline-flex; align-items:center; gap:var(--s2); text-decoration:none;
  border:1px solid var(--line-2); padding:9px 14px 9px 10px; transition:border-color .2s ease;
}
.vf-wa:hover { border-color:var(--accent); }
.vf-wa-i {
  width:26px; height:26px; flex:none; background:var(--accent); color:var(--ink);
  display:grid; place-items:center; font-size:15px;
}
.vf-wa-t { font:400 var(--t2)/1.4 var(--f-body); color:var(--muted); }
.vf-wa-t b {
  display:block; font:600 var(--t1)/1.5 var(--f-body); letter-spacing:.14em;
  text-transform:uppercase; color:var(--text);
}
.vf-soc { display:flex; gap:var(--s1); margin-top:var(--s3); }
.vf-soc a {
  width:34px; height:34px; display:grid; place-items:center; text-decoration:none;
  border:1px solid var(--line-2); color:var(--muted); font-size:14px; transition:.2s;
}
.vf-soc a:hover { border-color:var(--accent); color:var(--accent); }
.vf-foot-bar {
  max-width:var(--wrap); margin-inline:auto;
  padding:var(--s3) var(--s5); border-top:1px solid var(--line);
  display:flex; justify-content:space-between; gap:var(--s3); flex-wrap:wrap;
  font:400 var(--t1)/1.6 var(--f-body); color:var(--muted-2);
}

/* ================= hero ================= */
.vf-hero { position:relative; overflow:hidden; background:var(--ink); }
.vf-hero-img {
  position:absolute; inset:0; background-size:cover; background-position:center;
  filter:grayscale(1) contrast(1.15) brightness(.34);
}
.vf-hero::after {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg, var(--ink) 6%, rgba(21,24,28,.74) 52%, rgba(21,24,28,.2));
}
.vf-hero-in { position:relative; z-index:2; max-width:var(--wrap); margin-inline:auto; padding:var(--s6) var(--s5); }
.vf-hero--full .vf-hero-in { padding-block:calc(var(--s6) + 16px); }
.vf-hero--compact .vf-hero-in { padding-block:var(--s5); }
.vf-eyebrow {
  display:flex; align-items:center; gap:var(--s2); margin:0 0 var(--s3);
  font:600 var(--t1)/1 var(--f-body); letter-spacing:.3em; text-transform:uppercase; color:var(--accent);
}
.vf-eyebrow::before { content:''; width:34px; height:2px; background:var(--accent); flex:none; }
.vf-crumb {
  margin:0 0 var(--s3); font:500 var(--t2)/1 var(--f-body);
  letter-spacing:.06em; text-transform:uppercase; color:var(--muted-2);
}
.vf-crumb b { color:var(--muted); font-weight:500; }
.vf-h1 {
  font:700 var(--t7)/1.04 var(--f-head); letter-spacing:.005em;
  margin:0 0 var(--s3); color:var(--text); max-width:820px;
}
.vf-h1 span { color:var(--accent); }
.vf-lead { font:400 var(--t3)/1.72 var(--f-body); color:var(--muted); max-width:460px; margin:0 0 var(--s4); }
.vf-cta-row { display:flex; gap:var(--s2); flex-wrap:wrap; }

/* ================= section + heading ================= */
.vf-section { padding-block:var(--s6); border-top:1px solid var(--line); background:var(--ink); }
.vf-section--flush { border-top:0; }
.vf-shead { max-width:760px; margin:0 0 var(--s5); }
.vf-h2 {
  font:600 var(--t6)/1.16 var(--f-head); letter-spacing:.01em;
  margin:0 0 var(--s3); color:var(--text);
}
.vf-h2::after { content:''; display:block; width:46px; height:3px; background:var(--accent); margin-top:var(--s3); }
.vf-body { font:400 var(--t3)/1.78 var(--f-body); color:var(--muted); margin:0; }
.vf-body + .vf-body { margin-top:var(--s3); }

/* ---- uzun mətn blokları (building.html quruluşu) ---- */
.vf-prose { display:grid; grid-template-columns:52px minmax(0,1fr); gap:var(--s4); align-items:start; }
.vf-pnum { font:600 var(--t5)/1 var(--f-head); color:var(--accent); padding-top:4px; }
.vf-label {
  font:600 var(--t1)/1 var(--f-body); letter-spacing:.2em; text-transform:uppercase;
  color:var(--text); margin:var(--s4) 0 0;
}
.vf-sublist { list-style:none; padding:0; margin:var(--s3) 0 0; }
.vf-sublist li {
  position:relative; padding-left:var(--s4); margin-bottom:var(--s2);
  font:400 var(--t3)/1.7 var(--f-body); color:var(--muted);
}
.vf-sublist li::before {
  content:''; position:absolute; left:0; top:11px; width:8px; height:1.5px; background:var(--accent);
}

/* ================= plitə zolağı (imza komponent) ================= */
.vf-tiles { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.vf-tile {
  position:relative; background:var(--ink); transition:background .2s ease;
  padding:var(--s4) var(--s4) var(--s5); border-right:1px solid var(--line);
}
.vf-tile:last-child { border-right:0; }
.vf-tile:hover { background:var(--ink-2); }
.vf-tile::before {
  content:''; position:absolute; left:0; top:0; width:0; height:2px;
  background:var(--accent); transition:width .25s ease;
}
.vf-tile:hover::before { width:100%; }
.vf-tnum { font:600 var(--t1)/1 var(--f-body); letter-spacing:.26em; color:var(--muted-2); margin:0 0 var(--s2); }
.vf-h3 {
  font:600 var(--t4)/1.3 var(--f-head); letter-spacing:.05em;
  margin:0 0 var(--s1); color:var(--text);
}
.vf-tsub { font:400 var(--t2)/1.66 var(--f-body); color:var(--muted); margin:0; }

/* ================= qalereya ================= */
.vf-gal { display:grid; gap:2px; }
.vf-gal[data-cols="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vf-gal[data-cols="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.vf-gal[data-cols="4"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
.vf-gal-i {
  position:relative; margin:0; overflow:hidden; cursor:zoom-in;
  aspect-ratio:4/3; background:var(--ink-2);
}
.vf-gal-i img {
  width:100%; height:100%; object-fit:cover;
  filter:grayscale(.55) brightness(.85);
  transition:filter .3s ease, transform .5s ease;
}
.vf-gal-i:hover img { filter:none; transform:scale(1.045); }
.vf-gal-i figcaption {
  position:absolute; inset:auto 0 0 0; padding:10px 12px;
  font:500 var(--t1)/1.35 var(--f-body); letter-spacing:.09em; text-transform:uppercase; color:#fff;
  background:linear-gradient(0deg, rgba(21,24,28,.92), rgba(21,24,28,0));
}
.vf-gal--cert .vf-gal-i { aspect-ratio:3/4; background:var(--ink-2); }
.vf-gal--cert .vf-gal-i img { filter:none; object-fit:contain; }
.vf-gal--cert .vf-gal-i:hover img { transform:none; }

/* ---- lightbox ---- */
.vf-lb {
  position:fixed; inset:0; z-index:90; display:none;
  background:rgba(10,12,14,.94); place-items:center; padding:var(--s5);
}
.vf-lb.is-open { display:grid; }
.vf-lb img { max-width:100%; max-height:86vh; object-fit:contain; }
.vf-lb-x {
  position:absolute; top:var(--s4); right:var(--s4); width:44px; height:44px;
  background:none; border:1px solid var(--line-2); color:var(--text);
  font:300 24px/1 var(--f-body); cursor:pointer;
}
.vf-lb-x:hover { border-color:var(--accent); color:var(--accent); }

/* ================= karusel ================= */
.vf-swiper { background:var(--ink-2); border:1px solid var(--line); }
.vf-swiper .swiper-slide { aspect-ratio:16/7; background:var(--ink-2); overflow:hidden; }
.vf-swiper .swiper-slide img { width:100%; height:100%; object-fit:cover; display:block; }
/* sertifikatlar sənəd olduğu üçün dikinə, kəsilmədən və bir ekranda bir neçəsi */
.vf-swiper--cert .swiper-slide { aspect-ratio:3/4; background:var(--ink); }
.vf-swiper--cert .swiper-slide img { object-fit:contain; padding:var(--s2); }
.vf-swiper .swiper-pagination-bullet { background:var(--muted); opacity:.5; }
.vf-swiper .swiper-pagination-bullet-active { background:var(--accent); opacity:1; }
.vf-swiper .swiper-button-prev,
.vf-swiper .swiper-button-next { color:var(--accent); }
.vf-swiper .swiper-button-prev::after,
.vf-swiper .swiper-button-next::after { font-size:22px; }

/* ================= form ================= */
.vf-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px; max-width:640px; }
.vf-field--wide { grid-column:1 / -1; }
.vf-field input, .vf-field textarea {
  width:100%; background:var(--ink-2); border:1px solid var(--line); color:var(--text);
  font:400 var(--t3)/1.5 var(--f-body); padding:15px var(--s3); outline:none;
}
.vf-field textarea { min-height:104px; resize:vertical; }
.vf-field input:focus, .vf-field textarea:focus { border-color:var(--accent); background:#20252b; }
.vf-field input::placeholder, .vf-field textarea::placeholder { color:var(--muted-2); }
.vf-form button { grid-column:1 / -1; justify-self:start; margin-top:var(--s2); border:0; }

/* ================= xəritə + boşluqlu şəbəkə ================= */
.vf-grid--gap { gap:var(--s5); }
.vf-map { position:relative; min-height:420px; background:var(--ink-2); border:1px solid var(--line); }
.vf-map iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }

/* ================= xidmət kartları (title + şəkil + siyahı) ================= */
.vf-scards { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.vf-scard {
  display:flex; flex-direction:column; background:var(--ink);
  border-right:1px solid var(--line); transition:background .2s ease;
}
.vf-scard:last-child { border-right:0; }
.vf-scard:hover { background:var(--ink-2); }
.vf-scard-img { aspect-ratio:16/10; overflow:hidden; background:var(--ink-2); border-bottom:1px solid var(--line); }
.vf-scard-img img {
  width:100%; height:100%; object-fit:contain; padding:var(--s4);
  filter:grayscale(.3); transition:filter .3s ease, transform .5s ease;
}
.vf-scard:hover .vf-scard-img img { filter:none; transform:scale(1.04); }
.vf-scard-body { padding:var(--s4) var(--s4) var(--s5); }
.vf-scard .vf-sublist { margin-top:var(--s3); }

/* ================= texniki göstəricilər ================= */
.vf-spec {
  margin:var(--s4) 0 0; display:grid; grid-template-columns:auto minmax(0,1fr);
  gap:0; border-top:1px solid var(--line); max-width:720px;
}
.vf-spec dt {
  padding:var(--s2) var(--s4) var(--s2) 0; border-bottom:1px solid var(--line);
  font:600 var(--t1)/1.6 var(--f-body); letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted-2); white-space:nowrap;
}
.vf-spec dd {
  margin:0; padding:var(--s2) 0; border-bottom:1px solid var(--line);
  font:400 var(--t3)/1.6 var(--f-body); color:var(--text);
}

/* ================= rəqəm bloku ================= */
.vf-stat { margin-top:var(--s5); display:inline-flex; flex-direction:column; gap:var(--s1); }
.vf-stat b { font:700 var(--t7)/1 var(--f-head); color:var(--accent); letter-spacing:-.01em; }
.vf-stat span {
  font:600 var(--t1)/1 var(--f-body); letter-spacing:.2em; text-transform:uppercase; color:var(--muted);
}

/* ================= mətn + şəkil cütü (building.html) ================= */
.vf-dual { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:var(--s5); align-items:start; }
.vf-dual--flip .vf-dual-text { order:2; }
.vf-dual--flip .vf-dual-media { order:1; }
.vf-dual-media { display:grid; gap:2px; position:sticky; top:96px; }
.vf-dual-text .vf-shead { margin-bottom:var(--s4); }
.vf-dual-text .vf-tnum { margin-bottom:var(--s2); }

/* ================= tərəfdaş loqoları ================= */
.vf-partners {
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px;
  border:1px solid var(--line); background:var(--line);
}
.vf-plogo {
  margin:0; aspect-ratio:3/2; background:var(--ink); display:grid; place-items:center; padding:var(--s3);
}
.vf-plogo img {
  max-width:100%; max-height:100%; object-fit:contain;
  filter:grayscale(1) brightness(1.6) opacity(.65); transition:filter .3s ease;
}
.vf-plogo:hover img { filter:none; }
.vf-grid[data-cols="5"] { grid-template-columns:repeat(5,minmax(0,1fr)); }

@media (max-width:1080px) {
  /* 8 menyu bəndi + loqo + düymə bu genişlikdən aşağıda bir sətirə sığmır */
  .vf-burger { display:block; }
  .vf-nav-cta { display:none; }
  .vf-menu { display:none; }
  .vf-nav.is-open .vf-nav-in { flex-wrap:wrap; }
  .vf-nav.is-open .vf-menu {
    display:flex; flex-direction:column; gap:0; width:100%;
    flex-basis:100%; margin:var(--s3) 0 0; border-top:1px solid var(--line);
  }
  .vf-nav.is-open .vf-menu a { display:block; padding:var(--s3) 0; border-bottom:1px solid var(--line); }
  .vf-nav.is-open .vf-menu a[aria-current]::after { display:none; }
}

@media (max-width:900px) {
  .vf-grid[data-cols="3"], .vf-grid[data-cols="4"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :root { --t7:32px; --t6:24px; --s6:40px; --s5:22px; }

  .vf-foot-in { grid-template-columns:1fr 1fr; }
  .vf-tile { border-right:1px solid var(--line); }
  .vf-tile:nth-child(2n) { border-right:0; }
  .vf-scard:nth-child(2n) { border-right:0; }
  .vf-gal[data-cols="3"], .vf-gal[data-cols="4"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vf-dual { grid-template-columns:minmax(0,1fr); }
  .vf-dual--flip .vf-dual-text, .vf-dual--flip .vf-dual-media { order:unset; }
  .vf-dual-media { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vf-partners { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .vf-grid[data-cols="5"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .vf-grid[data-cols="2"], .vf-grid[data-cols="3"], .vf-grid[data-cols="4"] {
    grid-template-columns:minmax(0,1fr);
  }
  :root { --t7:27px; --s6:32px; --s5:18px; }

  .vf-topbar-in { gap:var(--s2); font-size:var(--t1); }
  .vf-foot-in { grid-template-columns:minmax(0,1fr); gap:var(--s4); }
  .vf-logo span { font-size:var(--t4); letter-spacing:.1em; }
  .vf-prose { grid-template-columns:minmax(0,1fr); gap:var(--s2); }
  .vf-tile { border-right:0; border-bottom:1px solid var(--line); }
  .vf-scard { border-right:0; border-bottom:1px solid var(--line); }
  .vf-gal[data-cols="2"], .vf-gal[data-cols="3"], .vf-gal[data-cols="4"] {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .vf-form { grid-template-columns:minmax(0,1fr); }
  .vf-swiper .swiper-slide { aspect-ratio:4/3; }
  .vf-partners { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
