/* =====================================================================
   SPOLEČNÉ STYLY PRO VŠECHNY STRÁNKY
   – všechny popisky a texty Montserrat Light (300), nadpisy zůstávají
   – menu v levém dolním rohu (negativ vůči pozadí)
   – tlačítka, odkazy a odkazy v menu se při najetí nakloní; v seznamu prací jen název práce
   ===================================================================== */

/* ---- v seznamu prací se nenaklání celá práce, jen její název ---- */
.work > a{ rotate:none !important; scale:none !important; }

/* ---- písmo: vše kromě nadpisů lehce ----
   (prvky s vlastním písmem v inline stylu — měřicí sondy psacích nápisů — se nechávají být) */
body *:not(h1, h2, h3, h4, h5, h6, svg, svg *, [style*="font-family"]):not(:is(h1, h2, h3, h4, h5, h6) *){
  font-weight:300 !important;
}

/* ---- MENU vlevo dole ---- */
.site-menu{
  position:fixed; z-index:1500;
  /* stejný okraj jako obsah stránky — levý kraj menu lícuje s krajem fotek prací */
  left:clamp(20px, 4vw, 56px); bottom:clamp(20px, 4vw, 56px);
  display:flex; flex-direction:column; align-items:flex-start;
  font-family:'Montserrat', sans-serif; font-weight:300;
  font-size:22px; line-height:1.15;   /* střední velikost okna — větší písmo, na velké obrazovce a telefonu viz níž */ letter-spacing:-0.01em;
  text-align:left; text-transform:lowercase;
  color:#fff; mix-blend-mode:difference;   /* negativ vůči čemukoli pod ním */
  -webkit-font-smoothing:antialiased;
}
.site-menu a, .site-menu button{
  display:block; width:fit-content; padding:0; margin:0; border:0; background:none;
  font:inherit; color:inherit; text-decoration:none; text-transform:inherit; letter-spacing:inherit;
  cursor:pointer; transform-origin:left center;
  transition:opacity .25s ease, rotate .4s cubic-bezier(.34,1.56,.64,1);
}
@media (hover:hover){
  .site-menu a:hover, .site-menu button:hover{ rotate:var(--tilt, -3deg); }
}
.site-menu a:hover, .site-menu button:hover{ opacity:.55; }
.site-menu :focus-visible{ outline:1px solid #fff; outline-offset:3px; }

.site-menu__list{
  display:grid; grid-template-rows:1fr; justify-items:start;
  transition:grid-template-rows .5s cubic-bezier(.2,.7,.2,1), opacity .35s ease;
}
.site-menu__list > div{ overflow:hidden; min-height:0; display:flex; flex-direction:column; align-items:flex-start; }
.site-menu.is-collapsed .site-menu__list{ grid-template-rows:0fr; opacity:0; pointer-events:none; }
/* položky vyjíždějí postupně jedna po druhé */
.site-menu__list > div > *{ transition:translate .5s cubic-bezier(.2,.7,.2,1), opacity .4s ease; }
.site-menu.is-collapsed .site-menu__list > div > *{ translate:0 .6em; opacity:0; }
.site-menu__list > div > :nth-child(2){ transition-delay:.04s; }
.site-menu__list > div > :nth-child(3){ transition-delay:.08s; }
.site-menu__list > div > :nth-child(4){ transition-delay:.12s; }
.site-menu__list > div > :nth-child(5){ transition-delay:.16s; }

.site-menu__lang{ display:flex; gap:.5em; }
.site-menu__lang button[aria-pressed="false"]{ opacity:.4; }
.site-menu__lang button[aria-pressed="false"]:hover{ opacity:.8; }

/* velká obrazovka: menší, ať nepřebíjí obsah */
@media (min-width: 1200px){
  .site-menu{ font-size:19px; }
}
/* telefon: menu je sbalené pod „menu“ a vyjíždí po klepnutí; velikost písma podle šířky obrazovky */
@media (max-width: 760px){
  .site-menu{ font-size:clamp(20px, 6.4vw, 26px); }
}
@media (prefers-reduced-motion: reduce){
  .site-menu__list, .site-menu__list > div > *{ transition:none; }
}

/* ---- KONTAKT: patička, která vyjede zespodu po kliknutí na „kontakt“ (bez ztmavení stránky) ---- */
.contact-drawer{ position:fixed; inset:0; z-index:1600; pointer-events:none; }
.contact-drawer__panel{
  position:absolute; left:0; right:0; bottom:0; max-height:100%; overflow:auto;
  translate:0 100%; transition:translate .7s cubic-bezier(.2,.8,.2,1);
  clip-path:polygon(0 clamp(24px,3.5vw,60px), 100% 0, 100% 100%, 0 100%);   /* šikmá horní hrana jako u sekcí */
  pointer-events:auto;
}
.contact-drawer.is-open .contact-drawer__panel{ translate:0 0; }
.contact-drawer .site-footer{
  position:relative; margin:0 !important;
  padding-top:calc(60px + clamp(24px,3.5vw,60px)) !important;
}
@media (prefers-reduced-motion: reduce){
  .contact-drawer__panel{ transition:none; }
}

/* ---- O MNĚ: strukturovaný životopis (vzdělání a co ovládám) ---- */
.about__cv{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(40px,6vw,96px);
  max-width:1280px; margin:clamp(64px,8vw,120px) auto 0;
  padding-top:clamp(32px,4vw,56px); border-top:1px solid rgba(255,255,255,.15);
}
.about__cv-label{
  font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--yellow, #FEDD00); margin-bottom:clamp(20px,2.5vw,32px);
}
.about__edu{ list-style:none; margin:0; padding:0; }
.about__edu li{ padding:0 0 clamp(20px,2.5vw,28px); margin-bottom:clamp(20px,2.5vw,28px); border-bottom:1px solid rgba(255,255,255,.1); }
.about__edu li:last-child{ border-bottom:0; margin-bottom:0; }
.about__edu-when{ display:block; font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.5); margin-bottom:8px; }
.about__edu-school{ font-size:clamp(19px,1.8vw,24px); line-height:1.3; color:#fff; margin:0 0 6px; }
.about__edu-field{ font-size:16px; line-height:1.5; color:rgba(255,255,255,.7); margin:0; }
.about__cv-group{ font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.5); margin:0 0 12px; }
.about__tags{ list-style:none; margin:0 0 clamp(24px,3vw,36px); padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.about__tags li{ padding:9px 18px; border:1px solid rgba(255,255,255,.35); border-radius:100px; font-size:15px; color:#fff; }
@media (max-width: 860px){ .about__cv{ grid-template-columns:1fr; } }
