
    /* Pisava Montserrat-Alt1, ki jo je priložil naročnik. */
    @font-face {
      font-family: 'Montserrat Alt1';
      src: url('../fonts/MontserratAlt1-Regular.woff2') format('woff2');
      font-style: normal;
      font-weight: 400;
      font-display: swap;
    }
    :root {
      color-scheme: light;
      --paper: #f8f9fc;
      --white: #fff;
      --ink: #151e31;
      --body: #536076;
      --muted: #7f8aa0;
      --line: #e7ebf3;
      --accent: #5863dc;
      --accent-soft: #edf0ff;
      --radius: 22px;
      --container: 1100px;
    }
    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: var(--paper);
      color: var(--ink);
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
      -webkit-font-smoothing: antialiased;
      line-height: 1.65;
    }
    ::selection { background: #dce1ff; color: var(--ink); }
    a { color: inherit; text-decoration: none; }
    a:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; border-radius: 5px; }
    .container { width: min(var(--container), calc(100% - 56px)); margin-inline: auto; }
    .site-header { background: rgba(248,249,252,.94); border-bottom: 1px solid var(--line); }
    .header-inner { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .brand { display: inline-flex; align-items: center; }
    .brand-symbol { display: grid; place-items: center; width: 39px; height: 39px; background: var(--ink); border-radius: 11px; color: white; }
    .brand-symbol svg { display: block; width: 23px; height: 23px; }
    .brand-text { display: flex; flex-direction: column; line-height: 1.1; }
    .brand-text strong { white-space: nowrap; letter-spacing: .065em; font-size: 24px; font-family: 'Montserrat Alt1', 'Montserrat', Arial, sans-serif; font-weight: 400; line-height: 1; }
    .brand-text small { color: var(--muted); font-size: 10px; letter-spacing: .24em; margin-top: 7px; font-weight:600; }
    .header-nav { display: flex; gap: 30px; align-items: center; }
    .header-nav a { font-size: 13px; color: #49566c; font-weight: 600; transition: color .2s ease; }
    .header-nav a:hover { color: var(--accent); }
    .header-nav .nav-contact { color: var(--ink); border: 1px solid #dbe0ed; padding: 9px 16px; border-radius: 9px; background: #fff; }
    .header-nav .nav-contact:hover { border-color: var(--accent); }
    .hero { padding: 106px 0 96px; }
    .hero-grid { display: grid; grid-template-columns: minmax(0,1.24fr) minmax(310px,.76fr); align-items: center; gap: clamp(45px,7vw,100px); }
    .eyebrow { display: inline-flex; align-items: center; gap: 10px; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 800; color: var(--accent); }
    .eyebrow::before { content: ""; display: inline-block; width: 7px; height: 7px; background: var(--accent); border-radius: 50%; }
    h1,h2,h3,p { margin-top: 0; }
    h1 { font-weight: 750; font-size: clamp(46px, 5.7vw, 78px); line-height: 1.095; letter-spacing: -.066em; margin: 24px 0 27px; }
    h1 span { color: var(--accent); }
    .hero-desc { color: var(--body); max-width: 530px; font-size: 17px; line-height: 1.8; margin-bottom: 35px; }
    .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }
    .button { display: inline-flex; justify-content: center; align-items: center; gap: 14px; color: #fff; background: var(--ink); padding: 14px 19px; border-radius: 11px; font-size: 13px; font-weight: 700; transition: transform .2s ease, background .2s ease; }
    .button:hover { background: #2b3750; transform: translateY(-2px); }
    .button svg { width: 16px; height: 16px; }
    .subtle-link { color: #4d5870; font-size: 13px; font-weight: 700; }
    .subtle-link:hover { color: var(--accent); }
    .art-panel { min-height: 405px; position: relative; overflow: hidden; border: 1px solid #dfe4f3; border-radius: 30px; background: radial-gradient(circle at 24% 20%,#fff 0,#f1f3ff 36%,#e3e8fb 100%); display: grid; place-items: center; isolation: isolate; }
    .art-panel::before,.art-panel::after { content:""; position: absolute; width: 430px; height: 430px; border: 1px solid rgba(88,99,220,.16); border-radius: 50%; left: 50%; top: 46%; transform: translate(-50%,-50%); }
    .art-panel::after { width: 290px; height: 290px; border-color: rgba(88,99,220,.20); }
    .art-wordmark { position:relative; z-index:1; display:flex; align-items:center; flex-direction:column; gap:16px; color:var(--ink); width:100%; padding-inline:16px; }
    .art-wordmark strong { font-family:'Montserrat Alt1','Montserrat',Arial,sans-serif; font-weight:400; font-size:clamp(34px,4.1vw,58px); letter-spacing:.07em; line-height:1.15; padding-left:0; white-space:nowrap; }
    .art-wordmark small { font-size:11px; letter-spacing:.19em; font-weight:700; color:#7984a4; padding-left:0; text-align:center; max-width:100%; }
    .art-wordmark::before { content:''; display:block; width:36px; height:2px; background:var(--accent); margin-bottom:17px; border-radius:2px; }
    .art-label { position: absolute; z-index: 1; left: 28px; bottom: 26px; display: flex; align-items: center; gap: 10px; color: #77819e; font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
    .art-label::before { content:""; width: 24px; height: 1px; background: #a5afd0; }
    .art-top { position:absolute; right: 27px; top: 25px; color:#a3aac9; font-size:10px; font-weight:800; letter-spacing:.08em; }
    .divider { border-top: 1px solid var(--line); }
    .values { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; padding: 26px 0; }
    .value { color: #7c8798; text-align: center; font-size: 11px; font-weight: 800; letter-spacing: .20em; text-transform: uppercase; }
    .value + .value { border-left: 1px solid #e4e8f0; }
    .section { padding: 108px 0 0; }
    .section-header { max-width: 675px; margin-bottom: 34px; }
    .section-header h2 { font-size: clamp(31px, 3.6vw, 47px); line-height: 1.2; letter-spacing: -.048em; margin: 17px 0 14px; }
    .section-header p { font-size: 16px; color: var(--body); max-width: 610px; }
    .services { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
    .service { padding: 34px 35px 38px; min-height: 275px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; box-shadow: 0 14px 32px rgba(21,30,49,.023); }
    .service-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 42px; }
    .service-icon { width: 44px; height: 44px; border-radius: 13px; color: var(--accent); background: var(--accent-soft); display:grid; place-items:center; }
    .service-icon svg { width:22px; height:22px; }
    .service-num { font-size: 12px; letter-spacing: .12em; color: #a3aebd; font-weight: 800; }
    .service h3 { font-size: 21px; letter-spacing: -.035em; margin: 0 0 9px; }
    .service p { max-width: 430px; margin: 0; font-size: 14px; color: var(--body); line-height: 1.85; }
    .thought { display:flex; align-items:center; gap: 35px; margin: 80px 0 0; padding: 38px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .thought-label { color: var(--accent); font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; white-space: nowrap; }
    .thought blockquote { margin: 0; max-width: 750px; font-size: clamp(18px,2.1vw,25px); font-weight: 500; line-height: 1.5; letter-spacing: -.027em; }
    .contact-section { padding: 98px 0 75px; }
    .contact-panel { background: #151e31; color: #fff; border-radius: 27px; padding: clamp(35px,6vw,68px); display: grid; grid-template-columns: 1.05fr .95fr; gap: 75px; }
    .contact-panel .eyebrow { color: #a4adff; }
    .contact-panel .eyebrow::before { background: #a4adff; }
    .contact-panel h2 { font-size: clamp(33px, 3.5vw,46px); letter-spacing:-.055em; line-height:1.15; margin: 23px 0 18px; }
    .contact-panel .contact-intro { color: #aeb8ca; font-size: 15px; line-height: 1.85; max-width: 385px; margin-bottom:0; }
    .contact-details { display: grid; gap: 21px; align-content: center; }
    .contact-item { padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.14); }
    .contact-item:last-child { border-bottom:0; padding-bottom:0; }
    .contact-item dt { font-size: 10px; color: #98a4bc; text-transform: uppercase; font-weight: 800; letter-spacing:.14em; margin-bottom: 5px; }
    .contact-item dd { margin:0; font-size:15px; font-weight:600; overflow-wrap:anywhere; }
    .contact-item a { color:#fff; text-decoration-thickness:1px; text-underline-offset:4px; }
    .contact-item a:hover { color:#cbd2ff; text-decoration:underline; }
    .footer { display:flex; justify-content:space-between; gap:20px; padding: 0 0 32px; color: #8490a0; font-size: 12px; }
    .footer .back { font-weight:700; color:#556179; }
    @media (max-width: 800px) {
      .container { width: min(var(--container), calc(100% - 40px)); }
      .header-inner { min-height: 76px; }
      .header-nav { gap: 15px; }
      .header-nav > a:first-child { display:none; }
      .hero { padding: 72px 0 66px; }
      .hero-grid { grid-template-columns: 1fr; gap: 46px; }
      .hero-desc { max-width: 660px; }
      .art-panel { min-height: 300px; }
      .art-wordmark strong { font-size:clamp(34px,6.5vw,51px); }
      .section { padding-top: 76px; }
      .thought { gap: 20px; margin-top: 65px; }
      .contact-panel { grid-template-columns:1fr; gap:35px; }
      .contact-section { padding-top: 74px; }
    }
    @media (max-width: 560px) {
      .container { width:calc(100% - 36px); }
      .brand-text strong { white-space: nowrap; font-size: 20px; }
      .brand-text small { font-size:9px; }
      .header-nav .nav-contact { padding: 8px 12px; }
      .hero { padding: 61px 0 57px; }
      h1 { font-size: clamp(43px,11.3vw,64px); }
      .hero-desc { font-size: 15px; }
      .hero-actions { gap: 20px; }
      .art-panel { min-height: 245px; border-radius: 23px; }
      .art-wordmark strong { font-size:clamp(25px,7.6vw,46px); }
      .art-wordmark small { font-size: 8px; letter-spacing: .11em; }
      .art-top { right:17px;top:15px; }
      .art-label { left:17px;bottom:16px;font-size:9px; }
      .values { grid-template-columns:1fr; gap:10px; padding:23px 0; }
      .value + .value { border-left:0; }
      .section-header p { font-size: 15px; }
      .services { grid-template-columns:1fr; }
      .service { min-height:0; padding:28px; }
      .service-top { margin-bottom:35px; }
      .thought { display:block; }
      .thought-label { display:block; margin-bottom:16px; }
      .thought blockquote { font-size:20px; }
      .contact-panel { border-radius:22px; padding:34px 27px; }
      .footer { flex-direction: column; gap: 8px; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { transition-duration: .01ms !important; }
    }
  
/* Izbira jezika; aktivna različica je poudarjena. */
.lang-switch { display: inline-flex; align-items: center; gap: 3px; padding: 3px;
  background: #edf0f7; border: 1px solid #dfe5f0; border-radius: 10px; white-space: nowrap; }
.header-nav .lang-switch a { display: inline-grid; place-items: center; min-width: 33px; height: 30px;
  border-radius: 7px; font-size: 11px; font-weight: 800; color: #6b7890; letter-spacing: .02em; }
.header-nav .lang-switch a[aria-current="page"] { color: #fff; background: var(--ink); }
.header-nav .lang-switch a:hover:not([aria-current="page"]) { color: var(--accent); background: #fff; }
@media (max-width: 620px) {
  .header-inner { padding-block: 14px; min-height: 0; flex-wrap: wrap; column-gap: 8px; row-gap: 15px; }
  .header-nav { width: 100%; justify-content: space-between; gap: 12px; }
}
