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

/* ---------- Barve: nevtralne + zelena kot edini poudarek ---------- */
:root{
  --ink:#1B2023;--ink-2:#000;--muted:#5A6268;--line:#E3E6E8;--line-strong:#C9CED2;
  --bg:#fff;--bg-soft:#F6F7F7;--green:#94C441;--green-ink:#4A7A1C;
  --on-dark:#fff;--on-dark-muted:#C9CFD3;--focus:#1B2023;--focus-dark:#94C441;
  --font:"Montserrat",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --container:72rem;--gutter:clamp(1.25rem,5vw,3.5rem);
}
html.hc{--ink:#000;--ink-2:#000;--muted:#000;--line:#000;--line-strong:#000;--bg-soft:#fff;--green:#000;--green-ink:#000;--on-dark-muted:#fff;--focus:#000;--focus-dark:#FFD400}
html[data-fs="1"]{font-size:112.5%}html[data-fs="2"]{font-size:125%}html[data-fs="3"]{font-size:150%}html[data-fs="4"]{font-size:175%}html[data-fs="5"]{font-size:200%}
html.rf{--font:Verdana,Tahoma,"Segoe UI",Arial,sans-serif}
html.sp body{letter-spacing:.12em;word-spacing:.16em;line-height:1.9}
html.sp p,html.sp li{margin-bottom:1.5em}
html.ul a{text-decoration:underline!important;text-underline-offset:.2em}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;overflow-wrap:break-word;font-family:var(--font);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:var(--bg);
  -webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:2px;text-underline-offset:.22em}
a:hover{text-decoration-color:var(--ink)}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}
.site-footer :focus-visible{outline-color:var(--focus-dark)}
.container{max-width:var(--container);margin:0 auto;padding-inline:var(--gutter)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.family{text-transform:uppercase;letter-spacing:.03em}
.skip{position:absolute;left:1rem;top:-10rem;z-index:100;background:var(--ink);color:var(--on-dark);padding:.75rem 1.25rem;font-weight:700;text-decoration:none}
.skip:focus{top:1rem}

/* ---------- Glava ---------- */
.site-header{border-bottom:1px solid var(--line);background:var(--bg)}
.header-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;min-height:4.75rem;padding-block:.5rem}
.brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--ink);min-height:2.75rem;margin-right:auto}
.brand::before{content:"";width:.25rem;height:2rem;background:var(--green);flex:none}
.brand-name{font-size:1.0625rem;line-height:1.15}
.brand-name .given{font-weight:400}
.brand-name .family{font-weight:800}
.main-nav ul{display:flex;flex-wrap:wrap;gap:0 .25rem}
.main-nav a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem;padding:0 .75rem;color:var(--ink);font-weight:500;font-size:.9375rem;text-decoration:none}
.main-nav a:hover{color:var(--muted)}
.main-nav a[aria-current="page"]{font-weight:700}
.main-nav a[aria-current="page"]::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.3rem;height:3px;background:var(--green)}
.header-actions{display:flex;align-items:center;gap:.25rem}
.icon-btn{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;min-width:2.75rem;padding:0 .75rem;border:1px solid var(--line-strong);border-radius:2px;background:var(--bg);color:var(--ink);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}
.icon-btn:hover{border-color:var(--ink)}
.icon-btn svg{width:1.25rem;height:1.25rem;flex:none}
.menu-btn{display:none}
@media (max-width:63.99rem){
  .menu-btn{display:inline-flex}
  .a11y-open .label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .main-nav{order:3;width:100%}
  .js .main-nav{display:none}
  .js.nav-open .main-nav{display:block}
  .main-nav ul{flex-direction:column;border-top:1px solid var(--line);padding:.5rem 0 .75rem}
  .main-nav a{width:100%;padding:0}
  .main-nav a[aria-current="page"]::after{left:-.75rem;right:auto;top:.6rem;bottom:.6rem;width:3px;height:auto}
}

/* ---------- Plošča dostopnosti ---------- */
.a11y-panel{background:var(--bg-soft);border-bottom:1px solid var(--line);padding:1.25rem 0}
.a11y-panel[hidden]{display:none}
.a11y-panel .container{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem;align-items:flex-end}
.a11y-group{display:flex;flex-direction:column;gap:.5rem;min-width:0;max-width:100%}
.a11y-label{font-size:.875rem;font-weight:600;color:var(--muted)}
.a11y-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.a11y-btn{min-height:2.75rem;min-width:2.75rem;padding:0 .875rem;border:1px solid var(--ink);border-radius:2px;background:var(--bg);color:var(--ink);font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}
.a11y-btn:hover{background:var(--line)}
.a11y-btn[aria-pressed="true"]{background:var(--ink);color:var(--on-dark)}
.a11y-btn:disabled{opacity:.4;cursor:not-allowed}
.a11y-status{font-weight:700;min-width:4rem}
.a11y-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;min-height:2.75rem}

/* ---------- Tipografija ---------- */
.eyebrow{display:flex;align-items:center;gap:.75rem;font-size:.875rem;font-weight:600;color:var(--muted);letter-spacing:.02em}
.eyebrow::before{content:"";width:1.5rem;height:3px;background:var(--green);flex:none}
.h2{font-size:clamp(1.625rem,1.2rem + 1.4vw,2.25rem);line-height:1.2;font-weight:700;letter-spacing:-.01em}
.lead{font-size:clamp(1.125rem,1rem + .4vw,1.3125rem);line-height:1.6;color:var(--ink);max-width:38em}
.prose{max-width:42rem}
.prose p{margin-bottom:1.25rem}
.prose .emph{font-weight:700}
.more{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;font-weight:600}
.more::after{content:"→";text-decoration:none;display:inline-block}

/* ---------- Gumbi ---------- */
.btns{display:flex;flex-wrap:wrap;gap:.75rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3.125rem;padding:0 1.5rem;border:1.5px solid var(--ink);border-radius:2px;font-weight:600;font-size:1rem;text-decoration:none}
.btn-primary{background:var(--ink);color:var(--on-dark)}
.btn-primary:hover{background:var(--ink-2);color:var(--on-dark)}
.btn-secondary{background:transparent;color:var(--ink)}
.btn-secondary:hover{background:var(--bg-soft);color:var(--ink)}

/* ---------- Domača stran ---------- */
.hero{padding:clamp(3rem,7vw,6rem) 0 clamp(3rem,6vw,5rem)}
.hero .container{display:flex;flex-wrap:wrap;align-items:center;gap:3rem clamp(2rem,6vw,5rem)}
.hero-text{flex:1 1 30rem;min-width:0;display:flex;flex-direction:column;gap:1.5rem}
.hero h1{font-size:clamp(2.75rem,1.5rem + 4.6vw,5rem);line-height:1.02;letter-spacing:-.015em;overflow-wrap:anywhere}
.hero h1 .given{display:block;font-weight:300}
.hero h1 .family{display:block;font-weight:800}
.hero .role{font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:600;line-height:1.4}
.hero .lead{color:var(--muted)}
.hero .btns{margin-top:.5rem}
.portrait{flex:1 1 20rem;min-width:0;max-width:28rem;margin:0 auto}
.portrait img{width:100%;aspect-ratio:7/8;object-fit:cover;background:var(--bg-soft)}

.facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-soft)}
.facts dl{display:flex;flex-wrap:wrap}
.facts dl > div{flex:1 1 12rem;min-width:0;padding:1.5rem 1.5rem 1.5rem 0}
.facts dt{font-size:.8125rem;font-weight:600;color:var(--muted);margin-bottom:.25rem}
.facts dd{font-weight:600;line-height:1.45;font-size:1rem}

.section{padding:clamp(3.5rem,7vw,6rem) 0}
.section-soft{background:var(--bg-soft)}
.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:2.5rem}
.section-head > div{display:flex;flex-direction:column;gap:.75rem;min-width:0}
.grid-3{display:flex;flex-wrap:wrap;gap:2.5rem}
.grid-3 > *{flex:1 1 17rem;min-width:0}
.feature{border-top:1px solid var(--line-strong);padding-top:1.25rem}
.feature h3{font-size:1.1875rem;font-weight:700;line-height:1.3;margin-bottom:.5rem}
.feature p{color:var(--muted);font-size:1rem}

.roles{border-top:1px solid var(--line-strong)}
.roles li{display:flex;flex-wrap:wrap;gap:.25rem 2rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}
.roles .r-title{flex:1 1 20rem;min-width:0;font-weight:700}
.roles .r-org{flex:1 1 16rem;min-width:0;color:var(--muted)}

.cta .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem 3rem}
.cta p{color:var(--muted);margin-top:.5rem}

/* ---------- Podstrani ---------- */
.page-head{padding:clamp(2.5rem,5vw,4rem) 0 clamp(2rem,4vw,3rem);border-bottom:1px solid var(--line)}
.page-head .container{display:flex;flex-direction:column;gap:1rem}
.page-head h1{font-size:clamp(2.25rem,1.5rem + 2.6vw,3.5rem);line-height:1.1;font-weight:700;letter-spacing:-.015em}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.25rem .5rem;font-size:.875rem;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--line-strong)}
.crumbs a{color:var(--muted)}
.page-body{padding:clamp(2.5rem,5vw,4rem) 0 clamp(3.5rem,7vw,6rem)}
.two-col{display:flex;flex-wrap:wrap;gap:3rem clamp(2rem,6vw,5rem)}
.two-col > .main{flex:1 1 32rem;min-width:0}
.two-col > .side{flex:0 1 20rem;min-width:0}
.aside-card{border-top:3px solid var(--green);padding-top:1.25rem}
.aside-card img{margin-bottom:1.5rem;aspect-ratio:7/8;object-fit:cover}
.aside-card dl > div{padding:.75rem 0;border-bottom:1px solid var(--line)}
.aside-card dt{font-size:.8125rem;font-weight:600;color:var(--muted)}
.aside-card dd{font-weight:600;font-size:.9375rem;line-height:1.45}
.signature{font-weight:700;margin-top:2rem}
.block + .block{margin-top:clamp(3rem,6vw,4.5rem)}
.block > .h2{margin-bottom:1.75rem}

/* Časovnica */
.timeline li{display:flex;flex-wrap:wrap;gap:.5rem 2.5rem;padding:1.75rem 0;border-top:1px solid var(--line)}
.timeline li:last-child{border-bottom:1px solid var(--line)}
.timeline .when{flex:0 1 11rem;min-width:0;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
.timeline .what{flex:1 1 22rem;min-width:0}
.timeline h3{font-size:1.1875rem;font-weight:700;line-height:1.35}
.timeline .org{color:var(--muted);font-weight:500;margin-top:.125rem}
.timeline .desc{margin-top:.625rem;font-size:1rem;max-width:44rem}
.now{display:inline-flex;align-items:center;gap:.4rem;margin-top:.375rem;font-size:.8125rem;font-weight:600;color:var(--ink)}
.now::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--green)}
.plain-list li{display:flex;flex-wrap:wrap;gap:.25rem 2.5rem;padding:1rem 0;border-top:1px solid var(--line)}
.plain-list li:last-child{border-bottom:1px solid var(--line)}
.plain-list .k{flex:1 1 20rem;min-width:0;font-weight:600}
.plain-list .v{flex:0 1 14rem;min-width:0;color:var(--muted)}

/* Projekti */
.items article{padding:1.5rem 0;border-top:1px solid var(--line)}
.items article:last-child{border-bottom:1px solid var(--line)}
.items h3{font-size:1.1875rem;font-weight:700;line-height:1.35}
.items .meta{color:var(--muted);font-size:.9375rem;font-weight:500;margin-top:.125rem}
.items p.d{margin-top:.5rem;max-width:44rem}

/* Kontakt */
.contact-list > div{display:flex;flex-wrap:wrap;gap:.25rem 2rem;padding:1.25rem 0;border-top:1px solid var(--line)}
.contact-list > div:last-child{border-bottom:1px solid var(--line)}
.contact-list dt{flex:0 1 10rem;min-width:0;color:var(--muted);font-weight:600}
.contact-list dd{flex:1 1 16rem;min-width:0;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:600;overflow-wrap:anywhere}

/* ---------- Noga ---------- */
.site-footer{background:var(--ink);color:var(--on-dark);margin-top:0}
.site-footer a{color:var(--on-dark)}
.footer-grid{display:flex;flex-wrap:wrap;gap:2.5rem 4rem;padding-block:3.5rem 2.5rem}
.footer-grid > *{min-width:0}
.footer-brand{flex:1 1 18rem}
.footer-brand .brand-name{font-size:1.25rem;display:block;margin-bottom:.75rem}
.footer-brand p{color:var(--on-dark-muted);font-size:.9375rem;max-width:22rem}
.footer-col{flex:0 1 12rem}
.footer-col.wide{flex:0 1 16rem}
.footer-h{font-size:.8125rem;font-weight:700;color:var(--on-dark-muted);margin-bottom:.75rem;letter-spacing:.02em}
.footer-col li a{display:inline-flex;align-items:center;min-height:2.25rem;font-size:.9375rem;overflow-wrap:anywhere}
.footer-col p{font-size:.9375rem}
.footer-col p a{display:inline-flex;align-items:center;min-height:2.25rem;overflow-wrap:anywhere}
.footer-col a{text-decoration-color:var(--green)}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.25rem 2rem;border-top:1px solid rgba(255,255,255,.14);font-size:.875rem;color:var(--on-dark-muted)}
.footer-bottom a{display:inline-flex;align-items:center;min-height:2.75rem}
html.hc .footer-bottom{border-top-color:#fff}

@media print{.a11y-panel,.header-actions,.main-nav,.btns,.skip,.site-footer{display:none!important}body{font-size:11pt}}
