*{margin:0;padding:0;box-sizing:border-box}
html{scrollbar-width:none}
::-webkit-scrollbar{display:none;width:0;height:0}
body{font-family:'Archivo',system-ui,-apple-system,sans-serif;color:#1B242B;background:#fff;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
button,input,select,textarea{font-family:inherit}
a{color:#DB791A;text-decoration:none}a:hover{color:#C16713}
::selection{background:#DB791A;color:#fff}
:focus{outline:none}
:focus-visible{outline:2px solid #DB791A;outline-offset:3px}
a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none;box-shadow:none}
[data-gv-nav],[data-gv-nav]:focus,[data-gv-nav]:focus-visible,[data-gv-nav]:active{outline:none!important;box-shadow:none!important;background:transparent!important;-webkit-tap-highlight-color:transparent}
[data-gv-nav]::selection,[data-gv-nav] *::selection{background:transparent}
[data-gv-nav]{user-select:none;-webkit-user-select:none}
[data-gv-field] input:focus,[data-gv-field] textarea:focus{outline:none}
[data-gv-field] input:focus~[data-gv-fline],[data-gv-field] textarea:focus~[data-gv-fline]{transform:scaleX(1)!important}
[data-gv-field] input:focus~[data-gv-flabel],[data-gv-field] input:not(:placeholder-shown)~[data-gv-flabel],[data-gv-field] textarea:focus~[data-gv-flabel],[data-gv-field] textarea:not(:placeholder-shown)~[data-gv-flabel]{transform:translateY(-30px) scale(.75);color:#5b656c;letter-spacing:.08em;text-transform:uppercase;font-weight:800}
[data-gv-field] input:focus~[data-gv-flabel],[data-gv-field] textarea:focus~[data-gv-flabel]{color:#11171C}
[data-gv-field] input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset}
[data-gv-filedrop]:focus-within{border-color:#11171C}
@keyframes gvline{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes gvcaret{0%,100%{opacity:1}50%{opacity:0}}
[data-gv-press]{transition:transform .12s cubic-bezier(.23,1,.32,1)}
[data-gv-press]:active{transform:scale(.97)}
[data-gv-dropmenu]{opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transform-origin:top center;transition:opacity .18s cubic-bezier(.23,1,.32,1),transform .18s cubic-bezier(.23,1,.32,1),visibility .18s}
[data-gv-drop]:focus-within [data-gv-dropmenu]{opacity:1;visibility:visible;transform:none}
@media (hover:hover) and (pointer:fine){
[data-gv-drop]:hover [data-gv-dropmenu]{opacity:1;visibility:visible;transform:none}
[data-gv-dropitem]:hover{background:rgba(255,255,255,.06)}
[data-gv-dropitem]:hover [data-gv-dropno]{color:#DB791A}
[data-gv-srow]:hover [data-gv-rtitle],[data-gv-proj]:hover [data-gv-rtitle],[data-gv-row]:hover [data-gv-rtitle]{color:#DB791A}
[data-gv-srow]:hover [data-gv-rarr],[data-gv-proj]:hover [data-gv-rarr],[data-gv-row]:hover [data-gv-rarr],[data-gv-area]:hover [data-gv-rarr]{transform:translateX(6px)}
[data-gv-proj]:hover [data-gv-pimg],[data-gv-row]:hover [data-gv-pimg],[data-gv-srow]:hover [data-gv-pimg]{transform:scale(1.04)}
[data-gv-proj]:hover [data-gv-pbar]{transform:scaleX(1)}
[data-gv-area]:hover{border-color:#11171C}
[data-gv-acc]:hover [data-gv-acct]{color:#DB791A}
[data-gv-copy]:hover{border-color:#DB791A!important;color:#fff!important}
[data-gv-toc]:hover{color:#DB791A!important}
@media (hover:hover) and (pointer:fine){[data-gv-totop]:hover{background:#1B242B!important}}
@media (prefers-reduced-motion:reduce){[data-gv-totop]{transition:opacity .2s,visibility 0s linear .2s!important}}
@media (max-width:520px){[data-gv-lrow]{grid-template-columns:1fr!important;gap:4px!important}}
[data-gv-area]:hover [data-gv-ano]{color:#DB791A}
[data-gv-srowl]:hover [data-gv-srowno]{color:#DB791A}
[data-gv-srowl]:hover [data-gv-srowarr]{background:#DB791A;border-color:#DB791A;color:#fff}
[data-gv-scol]:hover [data-gv-scolimg]{transform:scale(1.06)}
[data-gv-scol]:hover [data-gv-scolbar]{transform:scaleX(1)}
[data-gv-scol]:hover [data-gv-scoldesc]{grid-template-rows:1fr;opacity:1}
[data-gv-pt]:hover [data-gv-ptbar]{width:28px}
[data-gv-filt][aria-selected="false"]:hover{border-color:rgba(255,255,255,.6)!important}
[data-gv-chip][aria-pressed="false"]:hover{border-color:#11171C!important}
[data-gv-filedrop]:hover{border-color:#11171C;background:#F7F8F8}
[data-gv-nav]:hover{color:#fff!important}
[data-gv-nav]:hover [data-gv-nbar]{transform:scaleX(1)!important}
[data-gv-btn]:hover [data-gv-bfill]{clip-path:inset(0 0 0 0)}
[data-gv-btn]:hover [data-gv-barr]{transform:translateX(5px)}
[data-gv-btn="primary"]:hover{color:#fff}
[data-gv-btn="light"]:hover{color:#11171C}
[data-gv-btn="dark"]:hover{color:#fff}
[data-gv-link]:hover{color:#DB791A}
[data-gv-ico]:hover{background:#DB791A;border-color:#DB791A;color:#fff}
}
@media (max-width:940px){[data-gv-dnav]{display:none!important}[data-gv-burger]{display:flex!important}}
@media (max-width:900px){[data-gv-srowl]{grid-template-columns:40px minmax(0,1fr) 44px!important;row-gap:8px!important}[data-gv-srowl]>span:nth-child(3){grid-column:2/4}[data-gv-srowarr]{width:44px!important;height:44px!important}[data-gv-scols]{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(-1*clamp(20px,5vw,72px));padding:0 clamp(20px,5vw,72px);scrollbar-width:none}[data-gv-scols]::-webkit-scrollbar{display:none}[data-gv-scol]{flex:0 0 min(78vw,340px);scroll-snap-align:start}[data-gv-scoldesc]{grid-template-rows:1fr!important;opacity:1!important}[data-gv-svcgrid]{grid-template-columns:1fr!important}[data-gv-svccell]{grid-column:auto!important}[data-gv-split]{grid-template-columns:1fr!important}[data-gv-hidem]{display:none!important}[data-gv-mimg]{display:block!important}[data-gv-split-h]{min-height:0!important}}
@media (max-width:1000px){[data-gv-footgrid],[data-gv-cgrid]{grid-template-columns:1fr 1fr!important}}
@media (max-width:700px){[data-gv-facts]{grid-template-columns:1fr!important}[data-gv-facts]>div{border-right:none!important;padding:20px 0!important;border-bottom:1px solid rgba(17,23,28,.14)}[data-gv-scrollcue]{display:none!important}}
@media (max-width:600px){[data-gv-footgrid]{grid-template-columns:1fr!important}[data-gv-nowrap]{white-space:normal!important}[data-gv-step]{margin-left:0!important}}
@media (max-width:700px){[data-gv-crow]{grid-template-columns:minmax(0,1fr) 32px!important;gap:6px 12px!important}[data-gv-crow]>span:nth-child(2){grid-column:1}[data-gv-crow]>span:nth-child(3){grid-row:1/3;grid-column:2;align-self:center}}
@media (max-width:520px){[data-gv-stepr]{grid-template-columns:1fr!important;gap:10px!important}}
@media (max-width:760px){[data-gv-row]{grid-template-columns:1fr!important}[data-gv-row] [data-gv-rimg]{order:-1}[data-gv-areas]{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px!important;padding-bottom:6px;margin-right:calc(-1*clamp(20px,5vw,72px));padding-right:clamp(20px,5vw,72px)}[data-gv-areas]>*{flex:0 0 74%;scroll-snap-align:start}[data-gv-gal]{grid-template-columns:1fr 1fr!important}[data-gv-gal]>*{grid-column:auto!important;grid-row:auto!important;aspect-ratio:4/3!important}[data-gv-gal]>*:first-child{grid-column:1/-1!important}[data-gv-chain]{flex-direction:column!important;align-items:flex-start!important}[data-gv-chain] [data-gv-cline]{display:none!important}}
@media (prefers-reduced-motion:reduce){[data-gv-press]:active{transform:none}[data-gv-dropmenu]{transform:none;transition:opacity .15s}[data-gv-pimg],[data-gv-rarr],[data-gv-barr]{transition:none!important;transform:none!important}}


/* [WEB] Začetno stanje razkrivnih animacij.
   Gradnja izriše celotno vsebino v HTML, koda iz dizajna pa ji ob prevzemu nastavi
   izhodiščne sloge. Brez teh pravil bi vsebina za en okvir utripnila. Veljajo samo,
   kadar je JavaScript vklopljen (razred gv-js) — sicer je vse vidno takoj. */
.gv-js [data-reveal]:not([data-rv]){opacity:0;transform:translateY(22px)}
.gv-js [data-reveal="line"]:not([data-rv]){opacity:1;transform:scaleX(0)}
.gv-js [data-reveal="vline"]:not([data-rv]){opacity:1;transform:scaleY(0)}
.gv-js [data-reveal="clip"]:not([data-rv]){opacity:1;transform:none;clip-path:inset(0 0 100% 0)}
.gv-js [data-words]:not([data-ws]){color:rgba(255,255,255,.3)}
.gv-js [data-hero-word]:not([data-hw]){opacity:0}
.gv-js [data-about-hero]:not([data-hw]){opacity:0}
@media (prefers-reduced-motion:reduce){
.gv-js [data-reveal]:not([data-rv]){opacity:0;transform:none;clip-path:none}
.gv-js [data-hero-word]:not([data-hw]),.gv-js [data-about-hero]:not([data-hw]){opacity:1}
}

/* [WEB] Popravki postavitve po pregledu strani.
   Vsi so v tej datoteki in ne v slogih iz dizajna, da uvoz nove različice dizajna
   ostane preprost. */

/* Naslov pri "Potek dela" naj bo navpično poravnan na sredino seznama faz
   (v dizajnu je lepljiv in se ob drsenju ustavi na vrhu). */
[id$="-potek"] [data-gv-split] > [data-gv-sticky]{position:relative!important;top:auto!important;align-self:center}

/* Na ozkih zaslonih se dvostolpčna postavitev zloži v en stolpec, lepljivi stolpec pa
   ostane lepljiv in besedilo zdrsne čez sliko. Tam lepljivost izklopimo.
   (relative, ne static — v teh škatlah so slike postavljene absolutno.) */
@media (max-width:900px){
  [data-gv-split] > [data-gv-sticky]{position:relative!important;top:auto!important}
}

/* Gumb s puščico: ko se besedilo prelomi v dve vrstici, naj bo poravnano levo kot pri
   ostalih gumbih. Brskalniki gumbom privzeto sredinsko poravnajo besedilo. */
[data-gv-btn]:has([data-gv-barr]){text-align:left}

/* Lepljiva podnavigacija je drsna vrstica. Ko je vsebina širša od zaslona, sredinska
   poravnava odreže prvo postavko tako, da do nje ni mogoče zdrsniti; "safe center"
   v tem primeru samodejno poravna na začetek, sicer pa ostane na sredini. */
[data-gv-subnav]{scroll-padding-inline:20px}
@media (max-width:680px){[data-gv-subnav]{justify-content:flex-start!important}}
@supports (justify-content:safe center){[data-gv-subnav]{justify-content:safe center!important}}

/* Na telefonu postavke razdelimo na enako široke zavihke s številko nad napisom,
   da so vse vidne naenkrat in drsenja sploh ni treba. */
@media (max-width:600px){
  [data-gv-subnav]{gap:0!important;padding-left:12px!important;padding-right:12px!important;overflow-x:visible!important}
  [data-gv-subnav] > button{
    flex:1 1 0!important;
    min-width:0!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    padding:10px 4px 9px!important;
    min-height:54px!important;
    font-size:11px!important;
    letter-spacing:0!important;
    line-height:1.2!important;
    white-space:normal!important;
    text-align:center!important;
    text-wrap:balance;
  }
  [data-gv-subnav] > button > span{font-size:9.5px!important;letter-spacing:.12em!important}
}

/* Števila (projekti / leta / področja) ostanejo na telefonu v eni vrstici — zložena
   drug pod drugega so zavzela cel zaslon. Velja samo za bloke s števci; enak razred
   nosi tudi blok na kontaktu, kjer so besedila in mora ostati v stolpcu.
   Ločnica je nevtralna, ker je isti blok enkrat na svetli, enkrat na temni podlagi. */
@media (max-width:700px){
  [data-gv-facts]:has([data-count]){grid-template-columns:repeat(3,minmax(0,1fr))!important}
  [data-gv-facts]:has([data-count]) > div{
    border-bottom:none!important;
    border-right:1px solid rgba(128,136,142,.38)!important;
    padding:18px 12px 0 0!important;
  }
  [data-gv-facts]:has([data-count]) > div + div{padding-left:12px!important}
  [data-gv-facts]:has([data-count]) > div:last-child{border-right:none!important;padding-right:0!important}
  [data-gv-facts]:has([data-count]) > div > div:first-child{font-size:clamp(26px,7.4vw,34px)!important}
  [data-gv-facts]:has([data-count]) > div > div + div{font-size:10.5px!important;letter-spacing:.05em!important;margin-top:8px!important}
}

/* Filtri področij in izbirniki področja v obrazcu: na telefonu manjši,
   da se zberejo v dve ali tri vrstice namesto v stolpec. */
@media (max-width:600px){
  [data-gv-filt]{height:36px!important;padding:0 12px!important;font-size:11px!important;letter-spacing:.05em!important;gap:7px!important}
  [data-gv-filt] > span{font-size:10px!important}
  [data-gv-chip]{height:36px!important;padding:0 12px!important;font-size:11.5px!important}
}

/* Galerija projekta na telefonu: enakomerna mreža 2 × 2 namesto ene slike čez celo
   širino in ene osamljene v pol vrstice. */
@media (max-width:760px){
  [data-gv-gal] > *:first-child{grid-column:auto!important}
}

/* Naslovna fotografija projekta in storitve: na namizju je ob naslovu in sega do roba,
   na telefonu pa se postavi podenj. Tam jo poravnamo z ostalo vsebino, da ni čez cel
   zaslon, in ji damo mirnejšo višino. */
@media (max-width:900px){
  [data-gv-split-h] > div:last-child{
    margin:0 clamp(20px,5vw,72px) clamp(32px,6vw,56px);
    min-height:0!important;
    aspect-ratio:16/10;
  }
}

/* Pravne povezave v nogi dobijo svojo vrstico — skupaj s podpisom so bile stlačene. */
[data-gv-footmeta]{flex-basis:100%}

/* Na namizju gre vrstica s povezavami nad podpis, izdelovalec pa na desni rob,
   da vrstica izkoristi širino in ne visi na levi polovici. */
@media (min-width:601px){
  [data-gv-footmeta]{order:-1}
  [data-gv-footmeta] > a[href*="gudweb"]{margin-left:auto}
}

/* Noga na telefonu: vse na sredino. */
@media (max-width:600px){
  [data-gv-footgrid]{text-align:center}
  [data-gv-footgrid] img{margin-left:auto;margin-right:auto}
  [data-gv-footgrid] p{margin-left:auto;margin-right:auto}
  [data-gv-footgrid] [style*="flex-direction:column"]{align-items:center}
  [data-gv-footbar]{justify-content:center!important;text-align:center}
  [data-gv-footmeta]{justify-content:center!important}
  /* Stikalo jezika in podpis izdelovalca dobita vsak svojo vrstico,
     da ostanejo pravne povezave skupaj in berljive. */
  [data-gv-footmeta] > [role="group"]{flex-basis:100%;justify-content:center}
  [data-gv-footmeta] > a[href*="gudweb"]{flex-basis:100%;text-align:center}
}

/* Mere na logotipu so zato, da ob nalaganju ne skače postavitev; širina naj se vedno
   ravna po višini, sicer je logotip v nogi stisnjen. */
img[src$="gravas-logo-white.png"],img[src$="gravas-logo.png"]{width:auto}
