:root {
  --font-fa: "Parastoo", "Dana", "IRANSansX", "Vazirmatn", "Segoe UI", Tahoma, Arial, sans-serif;
  --font-en: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  --bg: #050505;
  --bg-soft: #0c0d10;
  --surface: rgba(255,255,255,.065);
  --surface-strong: rgba(255,255,255,.11);
  --text: #f6f4ef;
  --muted: #b9b6ad;
  --line: rgba(255,255,255,.13);
  --gold: #ffb400;
  --gold-2: #f6ca55;
  --accent: #00d4ff;
  --black: #050505;
  --white: #ffffff;
  --shadow: 0 24px 80px rgba(0,0,0,.38);
  --radius: 26px;
  --radius-sm: 16px;
  --container: 1200px;
}
html[data-itfirst-mode="dark"] {
  --bg: #050505;
  --bg-soft: #0d0d0f;
  --surface: rgba(255,255,255,.065);
  --surface-strong: rgba(255,255,255,.11);
  --text: #f7f4ed;
  --muted: #b9b4aa;
  --line: rgba(255,255,255,.13);
  --shadow: 0 24px 80px rgba(0,0,0,.42);
}
html[data-itfirst-mode="clean"] {
  --bg: #f7f6f2;
  --bg-soft: #ffffff;
  --surface: rgba(0,0,0,.045);
  --surface-strong: rgba(0,0,0,.075);
  --text: #141414;
  --muted: #55524a;
  --line: rgba(0,0,0,.10);
  --shadow: 0 20px 80px rgba(0,0,0,.10);
}
html[data-itfirst-mode="cyber"] {
  --bg: #02070c;
  --bg-soft: #06121c;
  --surface: rgba(0,212,255,.075);
  --surface-strong: rgba(255,180,0,.15);
  --text: #f8fbff;
  --muted: #aab9c7;
  --line: rgba(0,212,255,.22);
  --shadow: 0 26px 96px rgba(0,212,255,.10);
}
html[data-itfirst-mode="cv"] {
  --bg: #ffffff;
  --bg-soft: #ffffff;
  --surface: #f5f5f5;
  --surface-strong: #ededed;
  --text: #111111;
  --muted: #3d3d3d;
  --line: #dfdfdf;
  --gold: #d49700;
  --shadow: none;
  --radius: 14px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 16% 10%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 28%),
    radial-gradient(circle at 80% 2%, color-mix(in srgb, var(--gold) 9%, transparent), transparent 24%),
    var(--bg);
  color: var(--text);
  font-family: var(--font-fa);
  line-height: 1.85;
  overflow-x: hidden;
}
html[data-itfirst-mode="cyber"] body {
  background:
    linear-gradient(rgba(0,212,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,212,255,.045) 1px, transparent 1px),
    radial-gradient(circle at 78% 14%, rgba(0,212,255,.18), transparent 24%),
    radial-gradient(circle at 12% 22%, rgba(255,180,0,.13), transparent 24%),
    var(--bg);
  background-size: 34px 34px, 34px 34px, auto, auto, auto;
}
body.admin-bar .site-header { top: 32px; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
.container { width: min(var(--container), calc(100% - 40px)); margin-inline: auto; }
.screen-reader-text, .skip-link { position: absolute; left: -9999px; }
.skip-link:focus { left: 20px; top: 20px; z-index: 9999; background: var(--gold); color: #111; padding: 10px 18px; border-radius: 10px; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  backdrop-filter: blur(22px);
  background: color-mix(in srgb, var(--bg) 82%, transparent);
  border-bottom: 1px solid var(--line);
}
html[data-itfirst-mode="cyber"] .site-header { box-shadow: 0 0 50px rgba(0,212,255,.07); }
.header-inner { min-height: 84px; display: flex; align-items: center; gap: 22px; }
.brand { display: inline-flex; align-items: center; flex: 0 0 auto; }
.brand-logo-frame { display: inline-flex; align-items: center; justify-content: center; width: 196px; min-height: 44px; padding: 8px 13px; border-radius: 18px; background: rgba(255,255,255,.96); border: 1px solid rgba(255,180,0,.28); box-shadow: 0 14px 34px rgba(0,0,0,.18); }
.brand-logo { max-width: 170px; max-height: 42px; width: auto; height: auto; object-fit: contain; filter: none !important; }
html[data-itfirst-mode="clean"] .brand-logo-frame, html[data-itfirst-mode="cv"] .brand-logo-frame { background: #fff; box-shadow: 0 10px 26px rgba(0,0,0,.08); }
.site-nav { margin-inline-start: auto; }
.menu { list-style: none; display: flex; align-items: center; gap: 8px; padding: 0; margin: 0; }
.menu a { display: inline-flex; padding: 10px 13px; color: var(--muted); font-weight: 700; font-size: 14px; border-radius: 999px; transition: .22s; }
.menu a:hover, .menu .current-menu-item > a { color: var(--text); background: var(--surface); }
.header-tools { display: flex; align-items: center; gap: 12px; }
.itfirst-lang { display: flex; gap: 4px; align-items: center; padding: 4px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); }
.itfirst-lang a { font: 700 12px/1 var(--font-en); padding: 8px 9px; color: var(--muted); border-radius: 999px; }
.itfirst-lang a.is-active, .itfirst-lang a:hover { background: var(--gold); color: #111; }
.mode-switcher { display: flex; gap: 4px; padding: 4px; border-radius: 999px; border: 1px solid var(--line); background: var(--surface); }
.mode-switcher button { border: 0; background: transparent; color: var(--muted); padding: 8px 9px; border-radius: 999px; cursor: pointer; font: 700 11px/1 var(--font-en); }
.mode-switcher button.is-active { background: var(--gold); color: #111; }
html[data-itfirst-mode="cyber"] .mode-switcher button.is-active { background: linear-gradient(135deg, var(--accent), var(--gold)); color: #011; }
.nav-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.nav-toggle span { display: block; height: 2px; width: 22px; background: var(--text); margin: 5px auto; }
.section { position: relative; padding: 96px 0; }
.hero { min-height: calc(100vh - 84px); display: flex; align-items: center; overflow: hidden; }
.hero-video { display: none !important; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, var(--bg) 0%, color-mix(in srgb, var(--bg) 76%, transparent) 42%, color-mix(in srgb, var(--bg) 62%, transparent) 100%); }
.hero::after { content: ""; position: absolute; inset-inline-end: -12%; top: 18%; width: 45vw; height: 45vw; background: radial-gradient(circle, color-mix(in srgb, var(--gold) 16%, transparent), transparent 60%); pointer-events: none; }
html[data-itfirst-mode="cyber"] .hero::before { content:""; position:absolute; inset:0; background: linear-gradient(115deg, transparent 0 46%, rgba(0,212,255,.12) 46.2% 46.6%, transparent 47%), linear-gradient(25deg, transparent 0 54%, rgba(255,180,0,.10) 54.2% 54.6%, transparent 55%); pointer-events:none; }
.hero-grid { position: relative; display: grid; grid-template-columns: 1.02fr .8fr; align-items: center; gap: 60px; z-index: 1; }
.eyebrow, .section-kicker { display: inline-flex; align-items: center; gap: 8px; color: var(--gold); font: 800 12px/1 var(--font-en); letter-spacing: .08em; text-transform: uppercase; }
.eyebrow::before, .section-kicker::before { content: ""; width: 28px; height: 2px; background: var(--gold); border-radius: 999px; }
html[data-itfirst-mode="cyber"] .eyebrow, html[data-itfirst-mode="cyber"] .section-kicker { color: var(--accent); }
html[data-itfirst-mode="cyber"] .eyebrow::before, html[data-itfirst-mode="cyber"] .section-kicker::before { background: linear-gradient(90deg, var(--accent), var(--gold)); }
h1, h2, h3 { line-height: 1.35; margin: 0 0 18px; }
h1 { font-size: clamp(38px, 6vw, 78px); letter-spacing: -1.5px; max-width: 940px; }
h2 { font-size: clamp(28px, 4vw, 48px); }
h3 { font-size: 22px; }
p { color: var(--muted); margin: 0 0 18px; }
.lead { font-size: 20px; color: var(--text); }
.hero-copy p { max-width: 760px; font-size: 18px; }
.hero-tags { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; }
.hero-tags span { border: 1px solid var(--line); background: var(--surface); color: var(--text); padding: 8px 12px; border-radius: 999px; font: 700 13px/1.2 var(--font-en); }
.hero-actions, .cta-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px; border-radius: 999px; font-weight: 900; transition: .25s; border: 1px solid transparent; }
.btn-primary { background: linear-gradient(135deg, var(--gold), #ffd86c); color: #111; box-shadow: 0 16px 44px color-mix(in srgb, var(--gold) 20%, transparent); }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 20px 64px color-mix(in srgb, var(--gold) 28%, transparent); }
.btn-ghost { border-color: var(--line); background: var(--surface); color: var(--text); }
.btn-ghost:hover { background: var(--surface-strong); }
.hero-card { background: color-mix(in srgb, var(--bg-soft) 76%, transparent); border: 1px solid var(--line); border-radius: calc(var(--radius) + 12px); padding: 24px; box-shadow: var(--shadow); backdrop-filter: blur(18px); }
.hero-card img { border-radius: 22px; background: rgba(255,255,255,.96); padding: 10px; }
.brand-teaser-video { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 24px; background: #111; border: 1px solid var(--line); }
.teaser-placeholder { display: grid; gap: 14px; }
.teaser-placeholder code { direction:ltr; display:inline-block; color:var(--gold); }
.hero-card-lines { display: grid; gap: 8px; margin-top: 18px; color: var(--muted); font: 700 13px/1.4 var(--font-en); }
.section-head { max-width: 820px; margin-bottom: 36px; }
.mode-cards, .service-grid, .project-grid, .post-grid { display: grid; gap: 18px; }
.mode-cards { grid-template-columns: repeat(4, 1fr); }
.mode-card, .service-card, .project-card, .post-card, .about-panel, .stat-stack > div, .timeline-item, .cta-box, .entry-wrap, .service-zone, .showcase-wrap {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 45%, transparent));
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.mode-card { text-align: inherit; color: var(--text); padding: 24px; cursor: pointer; min-height: 170px; }
.mode-card b { display: block; margin-bottom: 14px; font: 900 20px/1.2 var(--font-en); }
.mode-card span { color: var(--muted); }
.mode-card:hover, .service-card:hover, .project-card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--gold) 54%, var(--line)); }
.about-grid { display: grid; grid-template-columns: 1.1fr .75fr; gap: 22px; align-items: stretch; }
.about-panel { padding: 34px; }
.stat-stack { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.stat-stack > div { padding: 24px; min-height: 150px; display: grid; align-content: center; }
.stat-stack b { display: block; color: var(--gold); font: 900 30px/1 var(--font-en); margin-bottom: 10px; }
.stat-stack span { color: var(--text); font-weight: 800; }
.service-zones { display:grid; gap:24px; }
.service-zone { padding: 28px; }
.zone-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:22px; border-bottom:1px solid var(--line); padding-bottom:18px; }
.zone-head span { color: var(--gold); font: 900 12px/1 var(--font-en); text-transform: uppercase; letter-spacing:.08em; }
.zone-head h3 { margin:0; }
.service-grid { grid-template-columns: repeat(4, 1fr); }
.service-grid.compact { grid-template-columns: repeat(4, 1fr); }
.service-card { padding: 26px; transition: .24s; }
.service-icon { width: 48px; height: 48px; display: inline-grid; place-items: center; border-radius: 16px; background: linear-gradient(135deg, var(--gold), #ffe09a); color: #111; font-weight: 900; margin-bottom: 18px; }
html[data-itfirst-mode="cyber"] .service-icon { background: linear-gradient(135deg, var(--accent), var(--gold)); }
.service-card a, .project-card a, .read-more { color: var(--gold); font-weight: 900; }
.project-grid { grid-template-columns: repeat(3, 1fr); }
.project-card { transition: .24s; min-height: 320px; display: flex; flex-direction: column; }
.project-card img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.project-body { padding: 26px; }
.project-body span, .post-card span { color: var(--gold); font: 800 12px/1 var(--font-en); text-transform: uppercase; letter-spacing: .08em; }
.timeline-list { display: grid; gap: 16px; max-width: 960px; }
.timeline-item { padding: 22px 26px; display: grid; grid-template-columns: 160px 1fr; gap: 22px; align-items: start; }
.timeline-item b { color: var(--gold); font-size: 24px; line-height: 1.2; }
.timeline-item span { color: var(--text); font-weight: 700; }
.blog-strip { background: color-mix(in srgb, var(--bg-soft) 64%, transparent); border-block: 1px solid var(--line); }
.post-grid { grid-template-columns: repeat(3, 1fr); }
.post-card { padding: 26px; }
.cta-box { padding: 38px; display: grid; grid-template-columns: 1fr auto; gap: 26px; align-items: center; background: linear-gradient(135deg, color-mix(in srgb, var(--gold) 18%, var(--surface)), var(--surface)); }
.page-hero { padding: 90px 0 42px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--gold) 12%, transparent), transparent 30%); }
.page-hero.compact h1 { font-size: clamp(34px, 5vw, 58px); }
.content-section { padding-top: 56px; }
.content-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.archive-card img { border-radius: 18px; margin-bottom: 18px; }
.entry-wrap { padding: 32px; }
.entry-content { color: var(--text); }
.entry-content p, .entry-content li { color: color-mix(in srgb, var(--text) 84%, var(--muted)); }
.entry-content a { color: var(--gold); font-weight: 800; }
.entry-thumb { width: 100%; border-radius: 20px; margin-bottom: 26px; }
.site-footer { border-top: 1px solid var(--line); background: color-mix(in srgb, var(--bg-soft) 88%, transparent); }
.footer-grid { padding: 56px 0; display: grid; grid-template-columns: 1.25fr .8fr .7fr; gap: 34px; }
.footer-logo { width: 180px; margin-bottom: 16px; background: #fff; border-radius: 18px; padding: 10px; }
.footer-contact, .footer-menu-wrap { display: grid; gap: 10px; align-content: start; }
.footer-contact a { color: var(--muted); }
.footer-contact a:hover { color: var(--gold); }
.footer-menu { list-style: none; padding: 0; margin: 0; display: grid; gap: 7px; }
.footer-menu a { color: var(--muted); }
.footer-bottom { border-top: 1px solid var(--line); padding: 16px 0; color: var(--muted); font-size: 13px; }
.footer-bottom .container { display: flex; justify-content: space-between; gap: 18px; }
.reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
html[data-itfirst-mode="cv"] .hero-video { display: none !important; }
html[data-itfirst-mode="cv"] .hero { min-height: auto; padding: 90px 0 56px; }
html[data-itfirst-mode="cv"] .hero-grid { grid-template-columns: 1.02fr .8fr; }
.showcase-wrap { padding: 30px; }
.showcase-head { max-width: 760px; margin-bottom: 24px; }
.showcase-slider { position: relative; min-height: 420px; }
.showcase-slide { position: absolute; inset: 0; display: grid; grid-template-columns: .9fr 1fr; gap: 28px; align-items: stretch; opacity: 0; pointer-events: none; transform: translateX(18px); transition: .5s ease; }
.showcase-slide.is-active { opacity: 1; pointer-events: auto; transform: translateX(0); }
.showcase-media { min-height: 350px; border-radius: 24px; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.22)), var(--slide-image) center/cover no-repeat; border: 1px solid var(--line); }
.showcase-content { display: grid; align-content: center; padding: 24px; }
.showcase-content span { color: var(--gold); font: 900 12px/1 var(--font-en); letter-spacing:.08em; text-transform:uppercase; }
.showcase-controls { margin-top: 22px; display: flex; align-items: center; justify-content: center; gap: 12px; }
.showcase-prev,.showcase-next,.showcase-dots button { border: 1px solid var(--line); background: var(--surface); color: var(--text); cursor: pointer; }
.showcase-prev,.showcase-next { width: 44px; height: 44px; border-radius: 999px; font-size: 28px; line-height: 1; }
.showcase-dots { display:flex; gap:6px; }
.showcase-dots button { width: 10px; height: 10px; padding:0; border-radius: 999px; font-size: 0; }
.showcase-dots button.is-active { background: var(--gold); border-color: var(--gold); width: 28px; }
@media (max-width: 1180px) {
  .header-tools { display: none; }
  .site-nav { margin-inline-start: auto; }
  .hero-grid, .about-grid, .cta-box { grid-template-columns: 1fr; }
  .mode-cards { grid-template-columns: repeat(2, 1fr); }
  .service-grid, .service-grid.compact { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 880px) {
  .nav-toggle { display: block; margin-inline-start: auto; }
  .site-nav { position: fixed; inset-inline: 20px; top: 92px; padding: 18px; border: 1px solid var(--line); background: var(--bg-soft); border-radius: 24px; box-shadow: var(--shadow); transform: translateY(-12px); opacity: 0; pointer-events: none; transition: .22s; }
  .site-nav.is-open { transform: translateY(0); opacity: 1; pointer-events: auto; }
  .menu { flex-direction: column; align-items: stretch; }
  .menu a { justify-content: center; }
  .project-grid, .post-grid, .content-grid { grid-template-columns: 1fr; }
  .stat-stack { grid-template-columns: 1fr; }
  .timeline-item { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom .container { flex-direction: column; }
  .showcase-slider { min-height: 680px; }
  .showcase-slide { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .container { width: min(100% - 28px, var(--container)); }
  .section { padding: 68px 0; }
  .hero { min-height: auto; padding-top: 84px; }
  .mode-cards, .service-grid, .service-grid.compact { grid-template-columns: 1fr; }
  .brand-logo-frame { width: 150px; }
  .brand-logo { max-width: 132px; }
  h1 { font-size: 36px; }
  .showcase-wrap { padding: 20px; }
}


/* IT FIRST v1.4 refinements */
.hero { background:
  radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--gold) 18%, transparent), transparent 28%),
  linear-gradient(135deg, color-mix(in srgb, var(--bg-soft) 72%, transparent), var(--bg));
}
html[data-itfirst-mode="clean"] .hero { background:
  radial-gradient(circle at 82% 8%, rgba(255,180,0,.14), transparent 24%),
  linear-gradient(135deg, #fbfaf6, #f2efe7); }
html[data-itfirst-mode="dark"] .hero { background:
  radial-gradient(circle at 78% 10%, rgba(255,180,0,.20), transparent 26%),
  linear-gradient(135deg, #030303 0%, #0b0803 42%, #111214 100%); }
html[data-itfirst-mode="cyber"] .hero { background:
  linear-gradient(rgba(0,212,255,.050) 1px, transparent 1px),
  linear-gradient(90deg, rgba(0,212,255,.050) 1px, transparent 1px),
  radial-gradient(circle at 74% 16%, rgba(0,212,255,.22), transparent 26%),
  linear-gradient(135deg, #01070d 0%, #041827 46%, #020407 100%); background-size: 34px 34px, 34px 34px, auto, auto; }
html[data-itfirst-mode="cv"] .hero { background: linear-gradient(135deg,#fff,#f6f4ee); }
.hero-shade { background: linear-gradient(90deg, color-mix(in srgb, var(--bg) 18%, transparent), transparent 62%); }
.hero-teaser-card { max-width: 520px; justify-self: stretch; }
.teaser-header.compact-title p, .compact-title p { display: none !important; }
.teaser-header h3 { margin-bottom: 14px; }
.brand-teaser-video { aspect-ratio: 16/9; background:#070707; box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.teaser-placeholder img { width: 100%; border-radius: 24px; }
.hero-card-lines { display:none; }
.section-head.compact-title { margin-bottom: 30px; }
.mode-card { min-height: 120px; }
.mode-card b { margin-bottom: 8px; }
.service-card p, .project-card p, .post-card p, .showcase-content p { font-size: 14px; line-height: 1.8; }
.showcase-content p { max-width: 360px; }
html[data-itfirst-mode="cyber"] .showcase-wrap,
html[data-itfirst-mode="cyber"] .service-zone,
html[data-itfirst-mode="cyber"] .hero-card { box-shadow: 0 0 0 1px rgba(0,212,255,.14), 0 28px 90px rgba(0,212,255,.10); }
html[data-itfirst-mode="dark"] .showcase-wrap,
html[data-itfirst-mode="dark"] .service-zone,
html[data-itfirst-mode="dark"] .hero-card { background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025)); }
html[data-itfirst-mode="cv"] .hero-card,
html[data-itfirst-mode="cv"] .showcase-wrap,
html[data-itfirst-mode="cv"] .service-zone,
html[data-itfirst-mode="cv"] .project-card,
html[data-itfirst-mode="cv"] .post-card,
html[data-itfirst-mode="cv"] .about-panel,
html[data-itfirst-mode="cv"] .timeline-item { border-radius: 18px; box-shadow: none; background:#fff; }
html[data-itfirst-mode="cv"] .mode-card { min-height: 96px; }
@media (max-width: 1180px) { html[data-itfirst-mode="cv"] .hero-grid { grid-template-columns: 1fr; } .hero-teaser-card { max-width: none; } }


/* IT FIRST v1.6 content architecture */
.about-grid-v16 { grid-template-columns: 1fr .86fr; align-items: stretch; }
.about-mini-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.about-photo-board { position: relative; min-height: 430px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--gold) 8%, transparent)); overflow: hidden; box-shadow: var(--shadow); }
.about-photo-board figure { margin:0; position:absolute; overflow:hidden; border:1px solid var(--line); background: var(--bg-soft); }
.about-photo-board figure img { width:100%; height:100%; object-fit:cover; }
.about-photo-main { inset: 28px 92px 86px 28px; border-radius: 30px; }
.about-photo-small { width: 170px; height: 170px; inset-inline-end: 26px; bottom: 30px; border-radius: 28px; padding:10px; background:#fff !important; }
.about-photo-small img { object-fit: contain !important; }
.about-photo-caption { position:absolute; inset-inline: 28px; bottom: 28px; max-width: 430px; padding: 14px 18px; border: 1px solid var(--line); border-radius: 18px; background: color-mix(in srgb, var(--bg) 72%, transparent); backdrop-filter: blur(14px); }
.about-photo-caption b { display:block; color:var(--gold); font:900 13px/1 var(--font-en); letter-spacing:.06em; text-transform:uppercase; }
.about-photo-caption span { color: var(--muted); font:700 12px/1.4 var(--font-en); }
.credentials-strip { border-block: 1px solid var(--line); background: color-mix(in srgb, var(--bg-soft) 70%, transparent); }
.credential-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap:18px; }
.credential-card { padding: 20px; min-height: 220px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); box-shadow: var(--shadow); display:flex; flex-direction:column; gap:16px; }
.credential-card img { width:100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 16px; }
.credential-card span { color: var(--gold); font: 900 12px/1 var(--font-en); letter-spacing:.08em; text-transform:uppercase; }
.credential-card h3 { margin:8px 0 8px; font-size: 20px; }
.center-action { margin-top: 28px; text-align:center; }
.about-page-grid { display:grid; grid-template-columns: 1fr 1fr .85fr; gap:22px; align-items:stretch; }
.about-story-card, .about-portrait-stack, .personal-gallery-grid figure { border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:var(--shadow); overflow:hidden; }
.about-story-card { padding:30px; }
.about-story-card h2 { margin-top:8px; }
.about-portrait-stack { display:grid; grid-template-rows: 1fr .7fr; gap:12px; padding:12px; }
.about-portrait-stack figure { margin:0; border-radius:20px; overflow:hidden; background:#fff; }
.about-portrait-stack img { width:100%; height:100%; object-fit:cover; }
.personal-gallery-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap:18px; }
.personal-gallery-grid figure { margin:0; aspect-ratio: 4/5; }
.personal-gallery-grid img { width:100%; height:100%; object-fit:cover; }
.credential-archive-grid { grid-template-columns: repeat(3, 1fr); }
.knowledge-grid .post-card h2 { font-size:22px; }
.project-archive-grid .project-card { min-height: 360px; }
html[data-itfirst-mode="cv"] .about-photo-board,
html[data-itfirst-mode="cv"] .credential-card,
html[data-itfirst-mode="cv"] .about-story-card,
html[data-itfirst-mode="cv"] .about-portrait-stack,
html[data-itfirst-mode="cv"] .personal-gallery-grid figure { box-shadow:none; border-radius:18px; background:#fff; }
@media (max-width: 1180px) {
  .about-grid-v16, .about-page-grid { grid-template-columns: 1fr; }
  .credential-grid, .credential-archive-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
  .about-photo-board { min-height: 360px; }
  .about-photo-main { inset: 20px 20px 110px 20px; }
  .about-photo-small { width:130px; height:130px; }
  .credential-grid, .credential-archive-grid, .personal-gallery-grid { grid-template-columns: 1fr; }
}

/* IT FIRST v1.7 structured content refinements */
.timeline-item span { display: grid; gap: 8px; }
.timeline-item span strong { font-size: 18px; font-weight: 900; color: var(--text); }
.timeline-item span small { display: block; color: var(--muted); font-size: 14px; line-height: 1.9; font-weight: 600; }
.entry-meta-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 0 0 26px; }
.entry-meta-grid > div { border: 1px solid var(--line); border-radius: 18px; padding: 16px; background: color-mix(in srgb, var(--surface) 88%, transparent); }
.entry-meta-grid span { display: block; color: var(--gold); font: 900 12px/1.4 var(--font-en); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 8px; }
.entry-meta-grid b { display: block; color: var(--text); font-size: 14px; line-height: 1.8; }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.contact-card { border: 1px solid var(--line); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 46%, transparent)); border-radius: var(--radius); box-shadow: var(--shadow); padding: 32px; }
.contact-lines { display: grid; gap: 12px; margin-top: 22px; }
.contact-lines a { display: flex; justify-content: space-between; align-items: center; gap: 18px; border: 1px solid var(--line); border-radius: 16px; padding: 14px 16px; color: var(--text); background: color-mix(in srgb, var(--surface) 80%, transparent); }
.contact-lines a b { color: var(--gold); }
.contact-lines a span { direction: ltr; unicode-bidi: embed; color: var(--muted); font-weight: 800; }
.clean-list { margin: 20px 0 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.clean-list li { border: 1px solid var(--line); border-radius: 16px; padding: 14px 16px; color: var(--text); background: color-mix(in srgb, var(--surface) 80%, transparent); }
.service-archive-grid .service-card h2 { margin: 8px 0 10px; font-size: 21px; }
html[data-itfirst-mode="clean"] .brand-logo-frame,
html[data-itfirst-mode="cv"] .brand-logo-frame,
html[data-itfirst-mode="dark"] .brand-logo-frame,
html[data-itfirst-mode="cyber"] .brand-logo-frame { background: #fff; box-shadow: 0 0 0 1px rgba(255,180,0,.18); }
@media (max-width: 920px) { .entry-meta-grid, .contact-grid { grid-template-columns: 1fr; } }

/* IT FIRST v1.8 premium design pass */
:root {
  --section-space: clamp(74px, 8vw, 116px);
  --card-blur: blur(18px);
}
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
.section { padding: var(--section-space) 0; }
.site-header { transition: background .25s ease, border-color .25s ease, box-shadow .25s ease; }
.header-inner { min-height: 78px; }
.menu a { font-weight: 800; letter-spacing: -.01em; }
.mode-switcher { max-width: 232px; }
.mode-switcher button { min-width: 48px; }
.hero { min-height: min(820px, calc(100vh - 78px)); }
.hero-grid { gap: clamp(34px, 6vw, 76px); }
.hero-copy { max-width: 850px; }
.hero-copy h1 { max-width: 860px; margin-bottom: 20px; letter-spacing: -.05em; }
.hero-copy p { max-width: 670px; color: color-mix(in srgb, var(--text) 70%, var(--muted)); font-size: clamp(16px, 1.35vw, 19px); }
.hero-tags { margin: 24px 0 30px; }
.hero-tags span { background: color-mix(in srgb, var(--surface) 70%, transparent); backdrop-filter: var(--card-blur); font-size: 12px; }
.hero-teaser-card { padding: 18px; }
.teaser-header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding: 4px 2px 14px; }
.teaser-header h3 { margin:0; font-size: 18px; }
.brand-teaser-video { border-radius: 20px; box-shadow: 0 22px 60px rgba(0,0,0,.28); }
.showcase-wrap { padding: clamp(20px, 3vw, 34px); }
.showcase-head { display:flex; align-items:end; justify-content:space-between; gap:18px; }
.showcase-head h2, .section-head h2 { letter-spacing: -.035em; }
.showcase-slide { gap: clamp(20px, 3vw, 38px); }
.showcase-media { min-height: 360px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.showcase-content h3 { font-size: clamp(26px, 3vw, 42px); max-width: 520px; }
.showcase-content p { font-weight: 700; }
.service-zone { padding: clamp(22px, 3vw, 34px); }
.zone-head { align-items:center; }
.zone-head h3 { margin-bottom:0; letter-spacing:-.03em; }
.service-card, .project-card, .post-card, .credential-card { transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease; }
.service-card h3, .project-card h3, .post-card h3, .credential-card h3 { letter-spacing: -.025em; }
.service-card p, .project-card p, .post-card p, .credential-card p { color: color-mix(in srgb, var(--text) 66%, var(--muted)); font-weight: 600; }
.project-card, .post-card, .credential-card { backdrop-filter: var(--card-blur); }
.project-card:hover, .post-card:hover, .credential-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--gold) 52%, var(--line)); }
.about-panel .lead { font-size: clamp(17px, 1.5vw, 21px); }
.about-photo-board { isolation: isolate; }
.about-photo-board::before { content:""; position:absolute; inset:18px; border:1px solid color-mix(in srgb, var(--gold) 24%, transparent); border-radius: calc(var(--radius) - 6px); pointer-events:none; z-index:1; }
.cta-box { overflow:hidden; }
.cta-box::after { content:""; position:absolute; inset-inline-end:-80px; top:-90px; width:220px; height:220px; border-radius:50%; background: color-mix(in srgb, var(--gold) 18%, transparent); filter: blur(8px); }
.cta-box > * { position:relative; z-index:1; }
.cta-box p { max-width: 620px; margin-top: -4px; }
html[data-itfirst-mode="dark"] .hero { background:
  radial-gradient(circle at 78% 18%, rgba(255,180,0,.17), transparent 26%),
  radial-gradient(circle at 14% 18%, rgba(255,255,255,.045), transparent 30%),
  linear-gradient(135deg, #030303 0%, #0c0904 52%, #101113 100%); }
html[data-itfirst-mode="cyber"] .hero { background:
  linear-gradient(rgba(0,212,255,.06) 1px, transparent 1px),
  linear-gradient(90deg, rgba(0,212,255,.06) 1px, transparent 1px),
  radial-gradient(circle at 80% 18%, rgba(0,212,255,.26), transparent 25%),
  radial-gradient(circle at 18% 18%, rgba(255,180,0,.12), transparent 26%),
  linear-gradient(135deg, #01070d 0%, #041a2a 48%, #020407 100%);
  background-size: 32px 32px, 32px 32px, auto, auto, auto; }
html[data-itfirst-mode="cyber"] .hero::before { opacity:.9; }
html[data-itfirst-mode="clean"] .hero { background:
  radial-gradient(circle at 78% 8%, rgba(255,180,0,.12), transparent 22%),
  linear-gradient(135deg, #fffdf8, #f1eee5); }
html[data-itfirst-mode="cv"] body { background:#fff; }
html[data-itfirst-mode="cv"] .hero { background:#fff; border-bottom:1px solid #e7e2d6; }
html[data-itfirst-mode="cv"] .hero-copy h1 { font-size: clamp(34px, 4.4vw, 56px); }
html[data-itfirst-mode="cv"] .brand-teaser-video { box-shadow:none; }
html[data-itfirst-mode="cv"] .service-zone, html[data-itfirst-mode="cv"] .showcase-wrap { border-color:#e8e4d8; }
html[data-itfirst-mode="clean"] .site-header, html[data-itfirst-mode="cv"] .site-header { background: rgba(255,255,255,.84); }
html[data-itfirst-mode="dark"] .site-header, html[data-itfirst-mode="cyber"] .site-header { background: color-mix(in srgb, var(--bg) 78%, transparent); }
.brand-logo-frame { min-height: 48px; }
.center-action { display:flex; justify-content:center; }
.read-more { display:inline-flex; margin-top: 8px; }
@media (max-width: 880px) {
  .hero-grid { gap: 28px; }
  .showcase-slider { min-height: 640px; }
  .showcase-media { min-height: 280px; }
  .zone-head { display:block; }
}
@media (max-width: 640px) {
  .hero-actions .btn { width: 100%; }
  .hero-tags span { font-size: 11px; padding: 7px 10px; }
  .showcase-content { padding: 14px 4px; }
}

/* IT FIRST v1.9 final polish: trust strip, method, archive filters, SEO-ready presentation */
.trust-strip-v19 { padding: 0 0 18px; margin-top: -34px; position: relative; z-index: 3; }
.trust-grid-v19 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; border: 1px solid var(--line); border-radius: 24px; background: color-mix(in srgb, var(--bg-soft) 82%, transparent); box-shadow: var(--shadow); backdrop-filter: var(--card-blur); padding: 12px; }
.trust-grid-v19 > div { min-height: 88px; display: grid; align-content: center; gap: 6px; padding: 14px 16px; border-radius: 18px; background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 46%, transparent)); border: 1px solid color-mix(in srgb, var(--line) 82%, transparent); }
.trust-grid-v19 b { color: var(--gold); font: 900 22px/1 var(--font-en); direction: ltr; unicode-bidi: embed; }
.trust-grid-v19 span { color: var(--text); font-size: 13px; font-weight: 850; }
.micro-intro { margin-top: -16px; margin-bottom: 26px; color: var(--muted); font-size: 14px; font-weight: 700; max-width: 800px; }
.process-v19 { border-block: 1px solid var(--line); background: color-mix(in srgb, var(--bg-soft) 66%, transparent); }
.process-grid-v19 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.process-card-v19 { position: relative; min-height: 230px; padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 44%, transparent)); box-shadow: var(--shadow); overflow: hidden; }
.process-card-v19::after { content:""; position:absolute; inset-inline-end:-38px; bottom:-38px; width:120px; height:120px; border-radius:50%; background: radial-gradient(circle, color-mix(in srgb, var(--gold) 18%, transparent), transparent 64%); }
.process-card-v19 b { display:inline-flex; width:46px; height:46px; align-items:center; justify-content:center; border-radius:16px; background:linear-gradient(135deg,var(--gold),#ffdc7a); color:#111; font:900 15px/1 var(--font-en); margin-bottom:20px; }
.process-card-v19 h3 { margin-bottom:10px; }
.process-card-v19 p { font-size:14px; line-height:1.9; }
.archive-filter-bar { width: min(var(--container), calc(100% - 40px)); margin: 26px auto 0; display:flex; flex-wrap:wrap; gap:10px; }
.archive-filter-bar a { display:inline-flex; min-height:38px; align-items:center; padding:8px 14px; border-radius:999px; background:var(--surface); border:1px solid var(--line); color:var(--text); font-weight:850; font-size:13px; }
.archive-filter-bar a:hover { background:var(--gold); color:#111; border-color:var(--gold); }
.single-hero p { max-width: 780px; }
.entry-content h2, .entry-content h3 { margin-top: 28px; }
.entry-content h2 { font-size: clamp(22px, 3vw, 34px); }
html[data-itfirst-mode="cyber"] .trust-grid-v19, html[data-itfirst-mode="cyber"] .process-card-v19 { box-shadow: 0 0 0 1px rgba(0,212,255,.12), 0 30px 96px rgba(0,212,255,.10); }
html[data-itfirst-mode="cv"] .trust-grid-v19, html[data-itfirst-mode="cv"] .process-card-v19 { box-shadow:none; background:#fff; border-color:#e7e2d6; }
html[data-itfirst-mode="cv"] .trust-grid-v19 > div { background:#fafafa; }
@media (max-width: 980px) { .trust-grid-v19, .process-grid-v19 { grid-template-columns: repeat(2, 1fr); } .trust-strip-v19 { margin-top: 0; padding-top: 18px; } }
@media (max-width: 640px) { .trust-grid-v19, .process-grid-v19 { grid-template-columns: 1fr; } .micro-intro { margin-top: -8px; } }

/* IT FIRST v2.0 deep professional polish */
html[data-itfirst-mode="dark"] .brand-logo-frame,
html[data-itfirst-mode="cyber"] .brand-logo-frame { background: #fff; border-color: color-mix(in srgb, var(--gold) 46%, transparent); }
.hero { isolation: isolate; }
.hero-copy h1 { max-width: 900px; }
.hero-teaser-card { overflow: hidden; }
.hero-teaser-card::before { content:""; position:absolute; inset:0; pointer-events:none; background: radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 30%); }
.hero-teaser-card > * { position: relative; z-index: 1; }
.trust-strip-v20 .trust-grid-v19 { grid-template-columns: repeat(4, minmax(0,1fr)); }
.delivery-v20 { padding-top: 30px; border-block: 1px solid var(--line); background: linear-gradient(135deg, color-mix(in srgb, var(--bg-soft) 78%, transparent), color-mix(in srgb, var(--surface) 52%, transparent)); }
.delivery-grid-v20 { display:grid; grid-template-columns: .9fr 1.1fr; gap: 22px; align-items: stretch; }
.delivery-copy, .delivery-items-v20 { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 40%, transparent)); box-shadow: var(--shadow); padding: 30px; }
.delivery-copy p { max-width: 620px; font-weight: 650; }
.delivery-items-v20 { display:grid; grid-template-columns: repeat(3, 1fr); gap: 12px; align-content: center; }
.delivery-items-v20 span { min-height: 74px; display:grid; place-items:center; text-align:center; border:1px solid var(--line); border-radius: 18px; background: color-mix(in srgb, var(--bg-soft) 64%, transparent); color: var(--text); font: 900 13px/1.5 var(--font-en); }
html[data-itfirst-mode="cyber"] .delivery-items-v20 span { border-color: rgba(0,212,255,.22); box-shadow: inset 0 0 24px rgba(0,212,255,.05); }
.card-impact-v20 { margin: 14px 0 16px; padding: 10px 12px; border-radius: 14px; background: color-mix(in srgb, var(--gold) 14%, transparent); border: 1px solid color-mix(in srgb, var(--gold) 25%, var(--line)); color: var(--text); font-size: 12.5px; font-weight: 850; }
.single-hero-v20 { padding: 82px 0 48px; }
.single-hero-grid-v20 { display:grid; grid-template-columns: 1fr minmax(260px, 380px); gap: 24px; align-items:end; }
.single-summary-card-v20, .side-card-v20 { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 42%, transparent)); box-shadow: var(--shadow); padding: 24px; }
.single-summary-card-v20 { display:grid; gap: 10px; }
.single-summary-card-v20 b { color: var(--gold); font: 900 13px/1 var(--font-en); text-transform: uppercase; letter-spacing:.08em; }
.single-summary-card-v20 span { color: var(--text); font-weight: 800; font-size: 13px; }
.single-layout-v20 { display:grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; align-items:start; }
.single-side-v20 { display:grid; gap: 16px; position: sticky; top: 110px; }
.side-card-v20 p { font-size: 14px; }
.side-card-v20.compact { display:grid; gap: 8px; }
.side-card-v20.compact b { color: var(--gold); }
.side-card-v20.compact span, .side-card-v20.compact a { color: var(--muted); font-weight: 800; }
.entry-meta-grid-v20 { margin-bottom: 28px; }
.entry-meta-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-bottom: 24px; }
.entry-meta-grid > div { border:1px solid var(--line); border-radius: 18px; background: var(--surface); padding: 16px; }
.entry-meta-grid span { display:block; color: var(--gold); font: 900 12px/1.4 var(--font-en); margin-bottom: 8px; }
.entry-meta-grid b { color: var(--text); font-size: 13px; line-height: 1.7; }
.about-hero-grid-v20 { display:grid; grid-template-columns: 1fr 270px; align-items:end; gap: 28px; }
.about-hero-photo-v20 { margin:0; border:1px solid var(--line); background:#fff; border-radius: 34px; padding: 12px; box-shadow: var(--shadow); }
.about-hero-photo-v20 img { border-radius: 24px; aspect-ratio: 1/1; object-fit: cover; }
.about-page-grid-v20 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.about-story-card { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 44%, transparent)); box-shadow: var(--shadow); padding: 30px; }
.clean-list { margin: 0; padding-inline-start: 22px; color: var(--muted); font-weight: 750; }
.clean-list li { margin-bottom: 8px; }
.contact-grid-v20 { display:grid; grid-template-columns: .85fr 1.15fr; gap: 24px; align-items:start; }
.contact-card { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 44%, transparent)); box-shadow: var(--shadow); padding: 30px; }
.contact-lines { display:grid; gap: 12px; }
.contact-lines a { display:grid; gap: 4px; border:1px solid var(--line); border-radius: 18px; padding: 14px 16px; background: color-mix(in srgb, var(--bg-soft) 52%, transparent); }
.contact-lines b { color: var(--gold); font-size: 12px; }
.contact-lines span { color: var(--text); font-weight: 800; word-break: break-word; }
.itfirst-contact-form { display:grid; gap: 14px; margin-top: 20px; }
.itfirst-contact-form .form-row.two { display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.itfirst-contact-form label { display:grid; gap: 7px; color: var(--text); font-weight: 850; font-size: 13px; }
.itfirst-contact-form input, .itfirst-contact-form textarea { width:100%; border:1px solid var(--line); border-radius: 16px; background: color-mix(in srgb, var(--bg-soft) 72%, transparent); color: var(--text); min-height: 48px; padding: 10px 14px; font: 700 14px/1.8 var(--font-fa); outline:none; }
.itfirst-contact-form textarea { resize: vertical; }
.itfirst-contact-form input:focus, .itfirst-contact-form textarea:focus { border-color: color-mix(in srgb, var(--gold) 70%, var(--line)); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gold) 12%, transparent); }
.itfirst-hp { position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }
.itfirst-form-alert { border-radius: 16px; padding: 12px 14px; font-weight: 850; margin: 0 0 16px; }
.itfirst-form-alert.is-success { background: rgba(0,190,120,.12); border:1px solid rgba(0,190,120,.25); color: var(--text); }
.itfirst-form-alert.is-error { background: rgba(220,40,40,.12); border:1px solid rgba(220,40,40,.25); color: var(--text); }
html[data-itfirst-mode="clean"] .itfirst-contact-form input,
html[data-itfirst-mode="clean"] .itfirst-contact-form textarea,
html[data-itfirst-mode="cv"] .itfirst-contact-form input,
html[data-itfirst-mode="cv"] .itfirst-contact-form textarea { background:#fff; }
html[data-itfirst-mode="cv"] .delivery-copy,
html[data-itfirst-mode="cv"] .delivery-items-v20,
html[data-itfirst-mode="cv"] .contact-card,
html[data-itfirst-mode="cv"] .about-story-card,
html[data-itfirst-mode="cv"] .single-summary-card-v20,
html[data-itfirst-mode="cv"] .side-card-v20 { box-shadow:none; background:#fff; border-color:#e7e2d6; }
@media (max-width: 980px) {
  .delivery-grid-v20, .single-hero-grid-v20, .single-layout-v20, .about-hero-grid-v20, .contact-grid-v20 { grid-template-columns: 1fr; }
  .single-side-v20 { position: static; }
  .delivery-items-v20 { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 640px) {
  .entry-meta-grid, .about-page-grid-v20, .itfirst-contact-form .form-row.two, .delivery-items-v20 { grid-template-columns: 1fr; }
  .delivery-copy, .delivery-items-v20, .contact-card, .about-story-card { padding: 22px; }
}


/* IT FIRST v2.2 final mobile, slider and archive polish */
.itfirst-scroll-progress{position:fixed;inset:0 0 auto 0;height:3px;z-index:10010;background:transparent;pointer-events:none}.itfirst-scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--accent));box-shadow:0 0 18px color-mix(in srgb,var(--gold) 45%,transparent);transition:width .08s linear}.showcase-head-v21{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:18px}.showcase-head-link{display:inline-flex;align-items:center;min-height:40px;padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-weight:900;font-size:13px;white-space:nowrap}.showcase-head-link:hover{background:var(--gold);color:#111;border-color:var(--gold)}.showcase-wrap{position:relative;overflow:hidden}.showcase-wrap:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 45%,transparent),transparent 36%,color-mix(in srgb,var(--accent) 38%,transparent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.showcase-media{position:relative;overflow:hidden;transform:translateZ(0)}.showcase-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.30),transparent 52%),radial-gradient(circle at 20% 12%,rgba(255,255,255,.12),transparent 24%);pointer-events:none}.showcase-media-badge{position:absolute;inset-inline-start:18px;bottom:18px;z-index:2;display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font:900 11px/1 var(--font-en);letter-spacing:.08em}.showcase-slide{transition:opacity .5s ease,transform .55s cubic-bezier(.22,.8,.22,1);transform:translate3d(22px,0,0) scale(.985)}.showcase-slide.is-active{transform:translate3d(0,0,0) scale(1)}.showcase-content{min-height:360px}.showcase-content h3{margin-top:10px}.showcase-meta-v21{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}.showcase-meta-v21 small{display:inline-flex;min-height:28px;align-items:center;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--bg-soft) 58%,transparent);color:var(--muted);font:800 11px/1.2 var(--font-en)}.showcase-progress-v21{height:4px;margin:18px auto 0;border-radius:999px;background:color-mix(in srgb,var(--surface) 80%,transparent);overflow:hidden;max-width:330px}.showcase-progress-v21 span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),var(--accent));transition:width .25s ease}.archive-hero-v21{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-soft) 80%,transparent),color-mix(in srgb,var(--surface) 45%,transparent));border-bottom:1px solid var(--line)}.archive-section-v21{padding-top:54px}.archive-grid-v21{gap:22px}.archive-card-v21{position:relative;overflow:hidden}.archive-card-v21:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--gold) 35%,var(--line))}.archive-thumb-v21{position:relative;display:block;min-height:210px;background:#fff;border-radius:calc(var(--radius-sm) + 2px);overflow:hidden;border:1px solid var(--line);margin:0 0 18px}.archive-thumb-v21 img{width:100%;height:100%;min-height:210px;object-fit:cover}.credential-card-v21 .archive-thumb-v21 img{object-fit:contain;padding:24px;background:#fff}.archive-thumb-v21 span{position:absolute;inset-inline-start:14px;bottom:14px;display:inline-flex;min-height:32px;align-items:center;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.93);color:#111;font:900 11px/1 var(--font-en);letter-spacing:.06em}.archive-card-body-v21{display:grid;gap:10px}.archive-card-top-v21{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--gold);font-size:12px;font-weight:900}.archive-card-top-v21 a{color:var(--gold)}.archive-card-top-v21 time{color:var(--muted);font-size:11px;white-space:nowrap}.archive-meta-pills-v21{display:flex;flex-wrap:wrap;gap:8px}.archive-meta-pills-v21 small{display:inline-flex;max-width:100%;min-height:30px;align-items:center;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--gold) 10%,transparent);border:1px solid color-mix(in srgb,var(--gold) 20%,var(--line));color:var(--text);font-weight:850;font-size:11.5px}.note-card-v21{min-height:260px}.itfirst-floating-actions{position:fixed;inset-inline-end:22px;bottom:22px;z-index:998;display:grid;gap:8px}.itfirst-floating-actions a{width:44px;height:44px;display:grid;place-items:center;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg-soft) 82%,transparent);color:var(--text);box-shadow:var(--shadow);font-weight:900;backdrop-filter:blur(14px)}.itfirst-floating-actions a:hover{background:var(--gold);color:#111;border-color:var(--gold)}.reveal{will-change:transform,opacity}.reveal.is-visible{animation:itfirstRevealV21 .62s cubic-bezier(.22,.8,.22,1) both}@keyframes itfirstRevealV21{from{opacity:0;transform:translateY(18px) scale(.985);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal,.reveal.is-visible{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}.showcase-slide{transition:none!important}.itfirst-scroll-progress span{transition:none!important}}
@media (max-width:1180px){.header-inner{min-height:74px}.site-header{background:color-mix(in srgb,var(--bg) 90%,transparent)}.hero{padding-top:48px}.hero-grid{align-items:start}.hero-copy h1{font-size:clamp(34px,7vw,64px)}.trust-strip-v20 .trust-grid-v19{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-grid-v20,.contact-grid-v20,.single-layout-v20{gap:18px}.archive-grid-v21{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:880px){body.admin-bar .site-header{top:46px}.site-nav{inset-inline:14px;top:82px;max-height:calc(100vh - 112px);overflow:auto}.site-nav.is-open + .header-tools{display:flex;position:fixed;z-index:1000;inset-inline:14px;top:auto;bottom:18px;padding:10px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--bg-soft) 95%,transparent);box-shadow:var(--shadow);justify-content:center;flex-wrap:wrap}.site-nav.is-open + .header-tools .itfirst-lang,.site-nav.is-open + .header-tools .mode-switcher{display:flex}.hero-tags{gap:7px}.hero-tags span{font-size:11px}.showcase-head-v21{align-items:start;flex-direction:column}.showcase-head-link{min-height:36px}.showcase-slider{min-height:690px}.showcase-content{min-height:auto;padding:18px 4px 6px}.showcase-media{min-height:300px}.project-grid,.post-grid,.content-grid,.archive-grid-v21{grid-template-columns:1fr}.archive-thumb-v21,.archive-thumb-v21 img{min-height:190px}.itfirst-floating-actions{inset-inline-end:14px;bottom:14px}.itfirst-floating-actions a{width:40px;height:40px;border-radius:14px}}
@media (max-width:640px){.container{width:min(100% - 24px,var(--container))}.section{padding:58px 0}.page-hero.compact{padding:58px 0 34px}.header-inner{gap:10px}.brand-logo-frame{width:138px;min-height:40px;padding:7px 10px;border-radius:15px}.brand-logo{max-width:122px}.nav-toggle{width:40px;height:40px;border-radius:12px}.hero{padding-top:28px}.hero-copy h1{font-size:34px;line-height:1.35}.hero-copy p{font-size:15px}.hero-actions .btn{width:100%;justify-content:center}.hero-teaser-card{padding:18px}.brand-teaser-video{border-radius:18px}.trust-strip-v20 .trust-grid-v19{grid-template-columns:1fr}.showcase-wrap{padding:16px;border-radius:22px}.showcase-slider{min-height:650px}.showcase-media{min-height:235px;border-radius:18px}.showcase-content h3{font-size:26px}.showcase-controls{gap:9px}.showcase-prev,.showcase-next{width:40px;height:40px}.delivery-items-v20 span{min-height:58px}.contact-lines a{display:grid;align-items:start}.footer-bottom .container{text-align:center}.itfirst-floating-actions{display:none}}
html[data-itfirst-mode="cv"] .showcase-wrap:before,html[data-itfirst-mode="cv"] .archive-card-v21:before{display:none}html[data-itfirst-mode="cv"] .archive-card-v21:hover{transform:none}html[data-itfirst-mode="cyber"] .showcase-progress-v21 span,html[data-itfirst-mode="cyber"] .itfirst-scroll-progress span{box-shadow:0 0 24px rgba(0,212,255,.28)}


/* IT FIRST v2.2 deep professional controls */
.brand-logo-frame{position:relative;isolation:isolate}.brand-logo-frame .brand-logo{transition:opacity .22s ease,transform .22s ease}.brand-logo-light{display:none}.brand-logo-dark{display:block}html[data-itfirst-mode="clean"] .brand-logo-dark,html[data-itfirst-mode="cv"] .brand-logo-dark{display:none}html[data-itfirst-mode="clean"] .brand-logo-light,html[data-itfirst-mode="cv"] .brand-logo-light{display:block}html[data-itfirst-mode="dark"] .brand-logo-frame,html[data-itfirst-mode="cyber"] .brand-logo-frame{background:linear-gradient(135deg,#fff,#f7f3e7);box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 32%,transparent),0 18px 42px rgba(0,0,0,.22)}
.showcase-wrap{border-radius:calc(var(--radius) + 4px)}.showcase-content span:first-child{font-family:var(--font-en);letter-spacing:.05em;text-transform:uppercase}.showcase-content h3{letter-spacing:-.045em}.showcase-content p{max-width:560px}.showcase-media{background:linear-gradient(135deg,#fff,#f4f1e8),var(--slide-image) center/contain no-repeat!important}.showcase-media::before{content:"";position:absolute;inset:0;background:var(--slide-image) center/contain no-repeat;filter:drop-shadow(0 24px 40px rgba(0,0,0,.12));z-index:1}.showcase-media-badge{z-index:3}.showcase-media:after{z-index:2}.showcase-slide{grid-template-columns:.95fr 1.05fr}.section-head.compact-title h2,.compact-title h2{font-weight:950}.micro-intro{font-size:15px;max-width:820px;color:color-mix(in srgb,var(--text) 72%,var(--muted));font-weight:750}.service-card h3,.project-card h3,.credential-card h3,.post-card h3{letter-spacing:-.025em}.btn{letter-spacing:-.01em}.hero-card,.showcase-wrap,.service-zone,.project-card,.post-card,.credential-card,.contact-card,.about-panel{border-color:color-mix(in srgb,var(--line) 82%,var(--gold) 8%)}html[data-itfirst-mode="cyber"] .hero-card,html[data-itfirst-mode="cyber"] .showcase-wrap,html[data-itfirst-mode="cyber"] .service-zone{border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--bg-soft) 82%,transparent),color-mix(in srgb,#01060b 88%,transparent))}html[data-itfirst-mode="clean"] .showcase-media,html[data-itfirst-mode="cv"] .showcase-media{background-color:#fff!important}.itfirst-admin-version-badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font:900 11px/1 var(--font-en);color:var(--muted)}
@media(max-width:880px){.showcase-slide{grid-template-columns:1fr}.showcase-media::before{background-size:contain}.showcase-content{padding:18px 2px}.brand-logo-light,.brand-logo-dark{max-height:38px}}


/* IT FIRST v2.3 final polish: presentation, pages, breadcrumbs, premium spacing */
:root { --v23-soft-line: color-mix(in srgb, var(--line) 72%, transparent); --v23-glow: 0 22px 80px color-mix(in srgb, var(--gold) 11%, transparent); }
body { text-rendering: optimizeLegibility; }
.site-main { overflow: clip; }
.section-head h2, .page-hero h1, .hero-copy h1 { letter-spacing: -.045em; }
.hero { min-height: min(860px, calc(100vh - 80px)); display: grid; align-items: center; }
.hero-copy h1 { max-width: 840px; }
.hero-copy p { max-width: 720px; }
.hero-tags span { border-color: var(--v23-soft-line); background: color-mix(in srgb, var(--surface) 76%, transparent); }
.hero-teaser-card { border: 1px solid color-mix(in srgb, var(--gold) 22%, var(--line)); box-shadow: var(--shadow), var(--v23-glow); }
.brand-teaser-video { aspect-ratio: 16/9; background: #070707; }
.trust-grid-v19 > div, .service-card, .project-card, .credential-card, .post-card, .archive-card-v21, .about-story-card, .side-card-v20, .contact-card { transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease; }
.trust-grid-v19 > div:hover, .service-card:hover, .project-card:hover, .credential-card:hover, .post-card:hover, .archive-card-v21:hover, .about-story-card:hover, .side-card-v20:hover, .contact-card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--gold) 33%, var(--line)); box-shadow: var(--shadow), 0 18px 60px color-mix(in srgb, var(--gold) 8%, transparent); }
.showcase-wrap { border-color: color-mix(in srgb, var(--gold) 20%, var(--line)); }
.showcase-slide { isolation: isolate; }
.showcase-content h3 { letter-spacing: -.035em; }
.showcase-content p, .micro-intro, .delivery-copy p, .entry-content p { font-weight: 650; }
.service-zone { position: relative; }
.service-zone::before { content:""; position:absolute; inset-inline-start:26px; top:26px; width:42px; height:3px; border-radius:99px; background:linear-gradient(90deg,var(--gold),transparent); opacity:.85; }
.process-card-v19 p, .delivery-copy p { color: var(--muted); }
.delivery-v20 { background: radial-gradient(circle at 22% 18%, color-mix(in srgb, var(--gold) 11%, transparent), transparent 32%), color-mix(in srgb, var(--bg-soft) 70%, transparent); }
.itfirst-breadcrumbs { padding: 14px 0 0; position: relative; z-index: 3; }
.itfirst-breadcrumbs .container { display:flex; flex-wrap:wrap; align-items:center; gap:9px; color:var(--muted); font-size:12px; font-weight:850; }
.itfirst-breadcrumbs a { color:var(--muted); text-decoration:none; }
.itfirst-breadcrumbs a:hover { color:var(--gold); }
.itfirst-breadcrumbs i { opacity:.45; font-style:normal; }
.itfirst-breadcrumbs span { color:var(--text); }
.page-hero-v23, .search-hero-v23, .error-hero-v23, .archive-hero-v21 { background: radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 34%), linear-gradient(180deg, color-mix(in srgb,var(--bg-soft) 82%,transparent), transparent); border-bottom: 1px solid var(--line); }
.page-content-v23 .entry-wrap, .single-content-v20 .entry-wrap { border:1px solid var(--line); background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 70%,transparent)); border-radius:28px; padding:clamp(22px,4vw,42px); box-shadow:var(--shadow); }
.entry-content h2 { margin-top: 1.8em; padding-top: .4em; color: var(--text); }
.entry-content ul, .entry-content ol { padding-inline-start: 1.4em; }
.entry-content li { margin: .4em 0; color: var(--muted); line-height: 2; }
.archive-filter-bar { position: sticky; top: 86px; z-index: 5; backdrop-filter: blur(14px); }
.archive-filter-bar a { font-weight: 900; }
.empty-card-v23 { grid-column: 1/-1; min-height: 180px; display:grid; align-content:center; }
.error-hero-v23 .hero-actions.compact { margin-top: 24px; }
.error-hero-v23 .container, .search-hero-v23 .container { max-width: 820px; }
html[data-itfirst-mode="cyber"] body { background-image: radial-gradient(circle at 16% 8%, rgba(0,212,255,.16), transparent 31%), linear-gradient(rgba(0,212,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(0,212,255,.035) 1px, transparent 1px); background-size: auto, 42px 42px, 42px 42px; }
html[data-itfirst-mode="cyber"] .site-header, html[data-itfirst-mode="cyber"] .hero-card, html[data-itfirst-mode="cyber"] .showcase-wrap { box-shadow: 0 0 0 1px rgba(0,212,255,.14), 0 24px 90px rgba(0,212,255,.09); }
html[data-itfirst-mode="clean"] .hero, html[data-itfirst-mode="clean"] .page-hero { background: linear-gradient(180deg,#fff, color-mix(in srgb,var(--gold) 5%,#f7f6f2)); }
html[data-itfirst-mode="cv"] .hero { min-height: auto; padding-block: 62px 38px; }
html[data-itfirst-mode="cv"] .hero-tags, html[data-itfirst-mode="cv"] .showcase-media-badge, html[data-itfirst-mode="cv"] .itfirst-scroll-progress { display:none; }
html[data-itfirst-mode="cv"] .service-card, html[data-itfirst-mode="cv"] .project-card, html[data-itfirst-mode="cv"] .post-card, html[data-itfirst-mode="cv"] .credential-card { box-shadow:none; }
@media (max-width: 860px) { .hero { min-height:auto; padding-block:34px 28px; } .itfirst-breadcrumbs{padding-top:10px}.archive-filter-bar{position:static}.page-content-v23 .entry-wrap, .single-content-v20 .entry-wrap{border-radius:22px;padding:20px}.trust-grid-v19 > div:hover, .service-card:hover, .project-card:hover, .credential-card:hover, .post-card:hover, .archive-card-v21:hover{transform:none} }


/* IT FIRST v2.4 content architecture, action bar, shortcodes and admin studio */
.entry-action-bar-v24{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:12px;border:1px solid color-mix(in srgb,var(--line) 78%,var(--gold) 12%);border-radius:18px;background:color-mix(in srgb,var(--surface) 86%,transparent);box-shadow:0 12px 36px color-mix(in srgb,var(--gold) 6%,transparent)}
.entry-action-bar-v24 a,.entry-action-bar-v24 button{appearance:none;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 76%,#fff 4%);color:var(--text);border-radius:999px;min-height:38px;padding:8px 14px;font:900 12px/1 var(--font);cursor:pointer;text-decoration:none}.entry-action-bar-v24 a:hover,.entry-action-bar-v24 button:hover{border-color:var(--gold);background:var(--gold);color:#111}.related-content-v24{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.itfirst-shortcode-section{margin:32px 0}.itfirst-grid-shortcode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.itfirst-grid-shortcode.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.itfirst-short-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 70%,transparent));box-shadow:var(--shadow);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.itfirst-short-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--gold) 36%,var(--line));box-shadow:var(--shadow),0 18px 60px color-mix(in srgb,var(--gold) 9%,transparent)}.itfirst-short-media{display:block;aspect-ratio:16/10;background:color-mix(in srgb,var(--bg-soft) 75%,transparent);overflow:hidden}.itfirst-short-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.itfirst-short-card:hover .itfirst-short-media img{transform:scale(1.035)}.itfirst-short-body{padding:20px}.itfirst-short-body span{display:inline-flex;margin-bottom:10px;color:var(--gold);font:900 11px/1 var(--font-en);letter-spacing:.06em;text-transform:uppercase}.itfirst-short-body h3{margin:0 0 10px;font-size:20px;line-height:1.55}.itfirst-short-body h3 a{color:var(--text);text-decoration:none}.itfirst-short-body p{margin:0;color:var(--muted);font-weight:700;line-height:1.9}.itfirst-short-body small{display:inline-flex;margin-top:14px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-weight:900;font-size:11px}.itfirst-studio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}.itfirst-studio-card{border:1px solid #dcdcde;border-radius:18px;background:#fff;padding:18px;box-shadow:0 10px 30px rgba(0,0,0,.04)}.itfirst-studio-card span{display:inline-flex;color:#9a6a00;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.itfirst-studio-card h3{margin:10px 0 8px;font-size:17px}.itfirst-studio-card p{min-height:70px;margin:0 0 16px;color:#50575e;line-height:1.9}.itfirst-copy-system{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.itfirst-copy-system div{padding:15px;border-radius:16px;background:#f6f7f7;border:1px solid #e2e4e7}.itfirst-copy-system b{display:block;margin-bottom:6px}.itfirst-copy-system p{margin:0;color:#50575e;line-height:1.8}@media(max-width:960px){.itfirst-grid-shortcode,.itfirst-grid-shortcode.compact,.itfirst-studio-grid,.itfirst-copy-system{grid-template-columns:1fr 1fr}}@media(max-width:640px){.itfirst-grid-shortcode,.itfirst-grid-shortcode.compact,.itfirst-studio-grid,.itfirst-copy-system{grid-template-columns:1fr}.entry-action-bar-v24 a,.entry-action-bar-v24 button{width:100%;justify-content:center}}
@media print{.site-header,.site-footer,.itfirst-breadcrumbs,.single-side-v20,.entry-action-bar-v24,.itfirst-floating-actions,.itfirst-scroll-progress{display:none!important}.single-layout-v20{display:block!important}.entry-wrap{box-shadow:none!important;border:0!important;padding:0!important}.page-hero,.single-hero{padding:0 0 20px!important;background:#fff!important;color:#111!important}.entry-content{color:#111!important}}


/* IT FIRST v2.5 launch readiness and final presentation polish */
.launch-block-v25 { padding-block: clamp(64px, 8vw, 110px); background: linear-gradient(135deg, color-mix(in srgb, var(--bg-soft) 78%, transparent), color-mix(in srgb, var(--surface) 50%, transparent)); border-block: 1px solid var(--line); }
.launch-grid-v25 { display:grid; grid-template-columns: .86fr 1.14fr; gap: 24px; align-items: stretch; }
.launch-copy-v25, .launch-checks-v25 article { border:1px solid var(--line); border-radius: var(--radius); background: linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 44%, transparent)); box-shadow: var(--shadow); }
.launch-copy-v25 { padding: clamp(26px, 4vw, 44px); display:flex; flex-direction:column; justify-content:center; min-height: 320px; }
.launch-copy-v25 h2 { max-width: 620px; font-size: clamp(30px, 4.8vw, 58px); letter-spacing: -.055em; margin-bottom: 14px; }
.launch-copy-v25 p { max-width: 620px; color: var(--muted); font-weight: 750; line-height: 2.05; }
.launch-actions-v25 { display:flex; flex-wrap:wrap; gap: 10px; margin-top: 24px; }
.launch-checks-v25 { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.launch-checks-v25 article { padding: 22px; min-height: 186px; position:relative; overflow:hidden; }
.launch-checks-v25 article::after { content:""; position:absolute; inset:auto -38px -44px auto; width:120px; height:120px; border-radius:50%; background: radial-gradient(circle, color-mix(in srgb, var(--gold) 14%, transparent), transparent 68%); pointer-events:none; }
.launch-checks-v25 b { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius: 16px; background: linear-gradient(135deg, var(--gold), #ffe08a); color:#111; font: 950 13px/1 var(--font-en); margin-bottom: 16px; }
.launch-checks-v25 h3 { margin: 0 0 8px; font-size: 18px; }
.launch-checks-v25 p { margin:0; color: var(--muted); font-size: 13.5px; line-height: 1.9; font-weight: 750; }
.itfirst-public-score-v25 { margin: 28px 0; border:1px solid var(--line); border-radius: var(--radius); background: var(--surface); padding: 24px; display:flex; align-items:center; justify-content:space-between; gap: 18px; box-shadow: var(--shadow); }
.itfirst-public-score-v25 b { color: var(--gold); font: 950 clamp(34px,5vw,64px)/1 var(--font-en); }
.itfirst-public-score-v25 span { color: var(--text); font-weight: 900; }
.itfirst-public-checks-v25 { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; }
.itfirst-public-check-v25 { border:1px solid var(--line); border-radius: 22px; background: var(--surface); padding: 20px; box-shadow: var(--shadow); }
.itfirst-public-check-v25 span { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; border-radius: 12px; background: color-mix(in srgb, var(--gold) 16%, transparent); color: var(--gold); font-weight: 950; margin-bottom: 14px; }
.itfirst-public-check-v25.is-done span { background: rgba(0,190,120,.13); color: #1ea86d; }
.itfirst-public-check-v25 h3 { font-size: 16px; margin: 0 0 8px; }
.itfirst-public-check-v25 p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; font-weight: 750; }
html[data-itfirst-mode="cyber"] .launch-block-v25 { background: linear-gradient(135deg, rgba(0,212,255,.07), rgba(255,180,0,.04)); }
html[data-itfirst-mode="cyber"] .launch-copy-v25, html[data-itfirst-mode="cyber"] .launch-checks-v25 article { box-shadow: 0 0 0 1px rgba(0,212,255,.12), 0 30px 90px rgba(0,212,255,.08); }
html[data-itfirst-mode="cv"] .launch-block-v25 { background:#fafafa; }
html[data-itfirst-mode="cv"] .launch-copy-v25, html[data-itfirst-mode="cv"] .launch-checks-v25 article, html[data-itfirst-mode="cv"] .itfirst-public-check-v25, html[data-itfirst-mode="cv"] .itfirst-public-score-v25 { box-shadow:none; border-color:#e7e2d6; background:#fff; }
@media (max-width: 1020px) { .launch-grid-v25, .itfirst-public-checks-v25 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 720px) { .launch-grid-v25, .launch-checks-v25, .itfirst-public-checks-v25 { grid-template-columns: 1fr; } .launch-copy-v25{min-height:auto} .itfirst-public-score-v25{align-items:flex-start;flex-direction:column} }


/* IT FIRST v3.0 release candidate: multilingual and final-stage polish */
body.itfirst-ltr { direction:ltr; text-align:left; }
body.itfirst-ltr .site-header, body.itfirst-ltr .site-main, body.itfirst-ltr .site-footer { direction:ltr; }
body.itfirst-ltr .hero-copy, body.itfirst-ltr .section-head, body.itfirst-ltr .archive-card-body-v21, body.itfirst-ltr .entry-content, body.itfirst-ltr .contact-card, body.itfirst-ltr .about-panel { text-align:left; }
body.itfirst-ltr .hero-actions, body.itfirst-ltr .launch-actions-v25, body.itfirst-ltr .about-mini-actions { justify-content:flex-start; }
body.itfirst-ltr .entry-meta-grid div, body.itfirst-ltr .single-summary-card-v20, body.itfirst-ltr .side-card-v20 { text-align:left; }
body.itfirst-ltr .site-nav .menu, body.itfirst-ltr .fallback-menu { direction:ltr; }
.itfirst-lang a { text-decoration:none; }
.itfirst-lang a.is-active { box-shadow: inset 0 -2px 0 var(--gold); }
.itfirst-admin-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.itfirst-admin-meta-grid textarea{font-family:inherit;border-radius:8px}.itfirst-admin-meta-grid input{border-radius:8px}.itfirst-admin-meta-grid p{margin:0 0 10px}@media(max-width:900px){.itfirst-admin-meta-grid{grid-template-columns:1fr}}
.release-note-v30{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:22px;color:var(--muted);font-weight:750;line-height:1.9}


/* IT FIRST v3.1.3 media application fix */
.about-photo-main img, .about-photo-small img { object-position: center center; }
.about-photo-small { background:#fff !important; }
.about-photo-small img { object-fit: cover !important; }
