:root{
  --bg: #0d0b0a;
  --bg-soft: #16130f;
  --card: #1b1815;
  --border: #322c28;
  --text: #ece7e2;
  --text-dim: #a49a92;
  --accent: #d0684f;
  --accent-2: #ec9578;
  --radius: 18px;
  --wrap: 1180px;
}

*{box-sizing:border-box;}
html{
  font-size:112.5%;
  scroll-behavior:smooth;
  scroll-padding-top:88px;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
html,body{overflow-x:hidden;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Barlow Semi Condensed', -apple-system, BlinkMacSystemFont, sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -webkit-tap-highlight-color:transparent;
}
img{max-width:100%;height:auto;}
h1,h2,h3{
  font-family:'Barlow Semi Condensed', sans-serif;
  line-height:1.15;
  margin:0 0 .5em;
  font-weight:600;
  letter-spacing:-0.01em;
}
p{margin:0 0 1em;color:var(--text-dim);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

.wrap{
  max-width:var(--wrap);
  margin:0 auto;
  padding:0 24px;
}

.noise{
  position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(circle at 15% 10%, rgba(208,104,79,0.12), transparent 40%),
    radial-gradient(circle at 85% 30%, rgba(236,149,120,0.06), transparent 45%);
}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(10px);
  background:rgba(13,11,10,0.78);
  border-bottom:1px solid var(--border);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:72px;
}
.logo{
  font-family:'Barlow Semi Condensed',sans-serif;
  font-weight:700;font-size:1.3rem;
}
.logo span{color:var(--accent);}
.nav{display:flex;gap:32px;}
.nav a{
  font-size:.95rem;color:var(--text-dim);
  transition:color .2s;
}
.nav a:hover{color:var(--text);}
.nav-toggle{
  display:none;
  flex-direction:column;justify-content:center;align-items:center;gap:5px;
  width:44px;height:44px;margin-right:-8px;
  background:none;border:none;cursor:pointer;
}
.nav-toggle span{
  width:24px;height:2px;background:var(--text);display:block;border-radius:2px;
  transition:transform .25s ease, opacity .2s ease;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* Hero */
.hero{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:60px;
  align-items:center;
  padding-top:80px;
  padding-bottom:100px;
  position:relative;z-index:1;
}
.eyebrow{
  text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;
  color:var(--accent);font-weight:600;margin-bottom:18px;
}
.hero h1{
  font-size:clamp(2.2rem, 5vw, 3.4rem);
  margin-bottom:22px;
}
.accent{color:var(--accent);}
.hero-lede{font-size:1.08rem;max-width:480px;}
.hero-cta{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap;}
.hero-media img{
  border-radius:var(--radius);
  aspect-ratio:4/5;object-fit:cover;
  border:1px solid var(--border);
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 26px;border-radius:999px;
  font-weight:600;font-size:.95rem;
  transition:transform .15s ease, background .2s ease, border-color .2s ease;
  border:1px solid transparent;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  color:#160a06;
}
.btn-ghost{
  border-color:var(--border);color:var(--text);
}
.btn-ghost:hover{border-color:var(--accent);}
.btn-large{padding:18px 34px;font-size:1rem;}

/* About */
.about{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:60px;
  align-items:center;
  padding:80px 24px;
  border-top:1px solid var(--border);
  position:relative;z-index:1;
}
.about-media img{
  border-radius:var(--radius);
  aspect-ratio:3/4;object-fit:cover;
  border:1px solid var(--border);
}
.section-tag{
  text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;
  color:var(--accent);font-weight:600;margin-bottom:12px;
}
.section-tag.center, h2.center{text-align:center;}
.about h2{font-size:clamp(1.6rem,3.4vw,2.2rem);max-width:620px;}
.about-facts{
  display:flex;gap:32px;margin-top:32px;flex-wrap:wrap;
}
.about-facts div{display:flex;flex-direction:column;gap:4px;}
.about-facts strong{
  font-family:'Barlow Semi Condensed',sans-serif;font-size:1.2rem;color:var(--text);
}
.about-facts span{font-size:.85rem;color:var(--text-dim);}
.about-cta{margin-top:32px;}

/* Pillars */
.pillars{padding:90px 24px;border-top:1px solid var(--border);position:relative;z-index:1;}
.pillars h2{font-size:clamp(1.8rem,3.6vw,2.4rem);margin-bottom:50px;}
.pillar-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.pillar-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:32px 28px;
  transition:border-color .2s;
}
.pillar-card:hover{border-color:var(--accent);}
.pillar-num{
  font-family:'Barlow Semi Condensed',sans-serif;
  color:var(--accent);font-weight:700;font-size:1.4rem;
}
.pillar-card h3{margin-top:16px;font-size:1.2rem;}
.pillar-card p{margin-bottom:0;font-size:.95rem;}

/* Logo strip */
.logo-strip{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  justify-content:center;
  margin-top:56px;
}
.logo-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  padding:20px 26px;
  display:flex;
  align-items:center;
  justify-content:center;
  height:88px;
  flex:0 0 auto;
}
.logo-card img{
  max-height:44px;
  max-width:140px;
  width:auto;
  object-fit:contain;
}
.logo-card--text{
  font-family:'Barlow Semi Condensed',sans-serif;
  font-size:1.3rem;
  font-weight:600;
  color:var(--text);
  padding:20px 32px;
}
.logo-card--mono{
  font-family:'Barlow Semi Condensed',monospace;
  letter-spacing:.08em;
}

/* Work */
.work{padding:90px 24px 150px;border-top:1px solid var(--border);position:relative;z-index:1;}
.work h2{font-size:clamp(1.8rem,3.6vw,2.4rem);margin-bottom:0;}
.work h2.center{margin-bottom:0;}

/* Project quick-nav (logo tiles) */
.project-nav{
  display:flex;flex-wrap:wrap;gap:14px;justify-content:center;
  max-width:900px;margin:40px auto 84px;
}
.project-nav .logo-card{
  width:132px;height:64px;padding:0;cursor:pointer;
  transition:border-color .2s, transform .15s, background .2s;
}
.project-nav .logo-card:hover{
  border-color:var(--accent);
  background:#241f1b;
  transform:translateY(-2px);
}
.project-nav .logo-card img{
  width:auto;height:auto;
  max-height:26px;max-width:100px;
  object-fit:contain;
  filter:grayscale(1) brightness(1.05);
  opacity:.55;
  transition:filter .25s ease, opacity .25s ease;
}
.project-nav .logo-card:hover img{
  filter:none;
  opacity:1;
}
.project-nav .logo-card--mark img{
  max-height:43.7px;max-width:43.7px;
}
.project{scroll-margin-top:96px;}
.project{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:44px;
  align-items:center;
  margin-bottom:88px;
}
.project:last-child{margin-bottom:0;}
.project--reverse .project-media{order:2;}
.project--reverse .project-info{order:1;}
.project-media--triple{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  grid-template-rows:1fr 1fr;
  gap:10px;
  height:380px;
}
.project-media--triple img{
  width:100%;height:100%;object-fit:cover;
  border-radius:14px;border:1px solid var(--border);
}
.project-media--triple img:first-child{grid-row:1/3;}
.project-media--triple img.fit-contain{object-fit:contain;background:#131110;}
.project-media--single{grid-template-columns:1fr;grid-template-rows:1fr;}
.project-media--single img{grid-row:auto;}
.project-media--solo{
  height:380px;
  background:#131110;
  border:1px solid var(--border);border-radius:var(--radius);
  overflow:hidden;
}
.project-media--solo img{width:100%;height:100%;object-fit:cover;}

.project-dates{
  font-size:.8rem;color:var(--text-dim);margin-bottom:8px;
  font-family:'Barlow Semi Condensed',sans-serif;letter-spacing:.03em;
}
.project-role{
  color:var(--accent);font-size:.85rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;
}
.project-info h3{font-size:1.7rem;margin-top:0;}

/* text-only project variant (wordmark / logo tile) */
.project-media--wordmark{
  height:380px;
  display:flex;align-items:center;justify-content:center;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
}
.project-wordmark{
  font-family:'Barlow Semi Condensed',sans-serif;
  font-size:clamp(2rem,5vw,3rem);
  font-weight:700;
  color:var(--text);
  letter-spacing:-0.02em;
}
.project-media--mono .project-wordmark{
  font-family:'Barlow Semi Condensed',monospace;
  letter-spacing:.1em;
  color:var(--accent-2);
}
.wordmark-logo{
  width:auto;height:auto;
  max-width:66%;max-height:120px;
  object-fit:contain;
}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;}
.tags span{
  font-size:.78rem;padding:6px 14px;border-radius:999px;
  border:1px solid var(--border);color:var(--text-dim);
}
.project-cta{
  display:inline-flex;align-items:center;gap:6px;
  margin-top:24px;
  padding:11px 22px;border-radius:999px;
  border:1px solid var(--border);
  background:none;font-family:inherit;cursor:pointer;
  color:var(--text);font-weight:600;font-size:.9rem;
  transition:border-color .2s, background .2s, transform .15s;
}
.project-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.project-ctas .project-cta{margin-top:0;}
.project-cta:hover{
  border-color:var(--accent);
  background:rgba(208,104,79,0.10);
  transform:translateY(-2px);
}
.project-cta--wip{
  border-style:dashed;color:var(--text-dim);cursor:default;
}
.project-cta--wip:hover{
  border-color:var(--border);background:none;transform:none;
}

/* References */
.references{
  padding:90px 24px;
  border-top:1px solid var(--border);
  position:relative;z-index:1;
}
.references h2{font-size:clamp(1.8rem,3.6vw,2.4rem);margin-bottom:0;}
.reference-grid{
  display:flex;flex-wrap:wrap;gap:20px;justify-content:center;
  margin-top:48px;
}
.reference-card{
  margin:0;
  width:340px;max-width:100%;min-height:200px;
  background:var(--card);
  border:1px dashed var(--border);
  border-radius:var(--radius);
  display:flex;align-items:center;justify-content:center;
  padding:28px;text-align:center;
  color:var(--text-dim);font-size:.95rem;letter-spacing:.02em;
}

/* Contact */
.contact{
  padding:120px 24px;text-align:center;
  border-top:1px solid var(--border);
  position:relative;z-index:1;
}
.contact h2{font-size:clamp(1.8rem,4vw,2.6rem);max-width:700px;margin:0 auto 16px;}
.contact-lede{max-width:480px;margin:0 auto 36px;}
.contact-secondary{margin-top:20px;}
.contact-secondary a{
  color:var(--text-dim);font-size:.9rem;
  border-bottom:1px solid var(--border);padding-bottom:2px;
}
.contact-secondary a:hover{color:var(--accent);}

/* Footer */
.site-footer{border-top:1px solid var(--border);padding:28px 24px;}
.footer-inner{
  display:flex;justify-content:space-between;align-items:center;
  color:var(--text-dim);font-size:.85rem;
}
.footer-inner a{color:var(--text-dim);}
.footer-inner a:hover{color:var(--accent);}

/* Gallery modal */
.gallery-modal{
  display:none;position:fixed;inset:0;z-index:100;
  align-items:center;justify-content:center;padding:24px;
}
.gallery-modal.open{display:flex;}
.gallery-backdrop{
  position:absolute;inset:0;
  background:rgba(6,7,10,.88);
  backdrop-filter:blur(6px);
}
.gallery-dialog{
  position:relative;z-index:1;
  width:min(1100px,100%);max-height:88vh;overflow:auto;
  background:var(--bg-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
}
.gallery-head{
  position:sticky;top:0;z-index:2;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px 24px;
  background:var(--bg-soft);
  border-bottom:1px solid var(--border);
}
.gallery-title{margin:0;font-size:1.1rem;}
.gallery-close{
  background:none;border:none;color:var(--text-dim);
  font-size:2rem;line-height:1;cursor:pointer;padding:0 6px;
  transition:color .2s;
}
.gallery-close:hover{color:var(--accent);}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:10px;padding:20px 24px 24px;
}
.gallery-grid img{
  width:100%;aspect-ratio:3/4;object-fit:cover;display:block;
  border-radius:10px;border:1px solid var(--border);
  cursor:zoom-in;transition:transform .15s, border-color .2s;
}
.gallery-grid img:hover{transform:scale(1.02);border-color:var(--accent);}
.lightbox{
  display:none;position:fixed;inset:0;z-index:110;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(6,7,10,.94);cursor:zoom-out;
}
.lightbox.open{display:flex;}
.lightbox img{
  max-width:100%;max-height:100%;object-fit:contain;
  border-radius:10px;
}

/* ============================================================
   RESPONSIVE  —  tablety a mobily (přepracováno)
   ============================================================ */

/* Menší laptop / tablet na šířku */
@media (max-width: 1024px){
  :root{ --wrap:960px; }
  .hero{ gap:44px; }
  .about{ gap:48px; }
}

/* Přechod na jednosloupcové rozvržení */
@media (max-width: 900px){
  html{ font-size:106.25%; }                 /* ~17px základ */
  .hero, .about, .project{ grid-template-columns:1fr; }
  .hero{ gap:36px; padding-top:52px; padding-bottom:64px; }
  .hero-media{ order:-1; }
  .hero-media img{ aspect-ratio:16/10; max-height:380px; width:100%; object-fit:cover; }
  .hero-lede{ max-width:none; }
  .about{ gap:32px; padding:60px 24px; }
  .about-media{ max-width:480px; }
  .about-media img{ aspect-ratio:16/10; }
  .project{ gap:26px; margin-bottom:60px; }
  .project-media, .project--reverse .project-media{ order:-1; }
  .project--reverse .project-info{ order:2; }
  .pillar-grid{ grid-template-columns:1fr; gap:16px; }
  .pillars{ padding:60px 24px; }
  .pillars h2{ margin-bottom:28px; }
  .work{ padding:60px 24px 84px; }
  .references, .contact{ padding:60px 24px; }
  .project-media--triple{ height:300px; }
  .project-media--wordmark{ height:220px; }
  .project-nav{ margin:32px auto 52px; }
  .logo-card{ height:72px; padding:16px 20px; }
  .logo-card img{ max-height:34px; max-width:110px; }
}

/* Zapnutí mobilní navigace (hamburger) */
@media (max-width: 760px){
  .nav{
    position:fixed;top:72px;left:0;right:0;
    background:rgba(22,19,15,0.98);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border);
    flex-direction:column;gap:0;
    max-height:0;overflow:hidden;
    transition:max-height .28s ease;
  }
  .nav.open{ max-height:calc(100vh - 72px); }
  .nav a{
    padding:17px 24px;border-bottom:1px solid var(--border);
    font-size:1.05rem;color:var(--text);
  }
  .nav a:active{ background:rgba(208,104,79,0.08); }
  .nav-toggle{ display:flex; }
  .about-facts{ gap:20px 28px; }
}

/* Telefony */
@media (max-width: 640px){
  html{ font-size:100%; scroll-padding-top:64px; }   /* 16px základ */

  .wrap{ padding:0 18px; }
  .about, .pillars, .work, .references, .contact{ padding-left:18px; padding-right:18px; }

  /* Kompaktnější sticky header */
  .header-inner{ height:60px; }
  .nav{ top:60px; }
  .nav.open{ max-height:calc(100vh - 60px); }

  /* Typografie */
  .hero h1{ font-size:clamp(2rem, 9vw, 2.6rem); margin-bottom:14px; }
  .hero-lede{ font-size:1.02rem; line-height:1.55; }
  .about h2, .pillars h2, .work h2, .references h2{ font-size:clamp(1.5rem,6.2vw,1.95rem); }
  .contact h2{ font-size:clamp(1.7rem,6.8vw,2.1rem); }
  .eyebrow{ font-size:.72rem; margin-bottom:14px; }

  /* Hero */
  .hero{ padding-top:34px; padding-bottom:48px; gap:26px; }
  .hero-media img{ aspect-ratio:4/5; max-height:400px; }
  .hero-cta{ flex-direction:column; align-items:stretch; gap:12px; margin-top:24px; }
  .hero-cta .btn{ width:100%; }
  .btn{ padding:15px 24px; }
  .btn-large{ width:100%; max-width:100%; word-break:break-word; }

  /* About */
  .about{ padding:64px 18px; gap:26px; }
  .about-media{ max-width:none; }
  .about-media img{ aspect-ratio:4/3; }
  .about-facts{ gap:18px 26px; margin-top:24px; }

  /* Pillars */
  .pillars{ padding:64px 18px; }
  .pillar-card{ padding:26px 22px; }

  /* Projekty — koláž se mění na swipovatelný carousel */
  .work{ padding:64px 18px 84px; }
  .project{ margin-bottom:54px; }
  .project-info h3{ font-size:1.55rem; }

  .project-media--triple{
    display:flex;
    height:auto;
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin:0 -18px;
    padding:0 18px;
  }
  .project-media--triple::-webkit-scrollbar{ display:none; }
  .project-media--triple img,
  .project-media--triple img:first-child{
    flex:0 0 84%;
    height:auto;
    aspect-ratio:4/3;
    scroll-snap-align:center;
    grid-row:auto;
  }
  .project-media--triple.project-media--single{
    display:block; margin:0; padding:0;
  }
  .project-media--single, .project-media--solo{ height:auto; aspect-ratio:16/11; }
  .project-media--single img, .project-media--solo img{ aspect-ratio:16/11; }

  /* Logo rychlonavigace — horizontální swipe */
  .project-nav{
    display:flex;flex-wrap:nowrap;justify-content:flex-start;
    gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
    scrollbar-width:none;margin:24px -18px 44px;
    padding:8px 18px 12px;   /* svislý prostor pro nadskočení = obrys se neořízne */
  }
  .project-nav::-webkit-scrollbar{ display:none; }
  .project-nav .logo-card{
    width:122px;height:60px;flex:0 0 auto;scroll-snap-align:start;
  }

  /* Reference */
  .references{ padding:64px 18px; }
  .reference-card{ width:100%; min-height:auto; padding:24px; font-size:1rem; }

  /* Kontakt */
  .contact{ padding:72px 18px; }
  .contact-lede{ font-size:1rem; }
  .contact-tiles--section{ margin-top:28px; }
  .contact-tile-val{ white-space:normal; word-break:break-word; font-size:.92rem; }

  /* Galerie modal */
  .gallery-modal{ padding:10px; }
  .gallery-dialog{ max-height:94vh; }
  .gallery-head{ padding:14px 16px; }
  .gallery-title{ font-size:1rem; }
  .gallery-grid{ grid-template-columns:repeat(2,1fr); gap:8px; padding:14px 16px 16px; }
  .lightbox{ padding:12px; }

  /* Footer */
  .footer-inner{ flex-direction:row; gap:12px; flex-wrap:wrap; font-size:.8rem; }
}

/* Malé telefony */
@media (max-width: 380px){
  .wrap{ padding:0 14px; }
  .about, .pillars, .work, .references, .contact{ padding-left:14px; padding-right:14px; }
  .hero h1{ font-size:clamp(1.8rem,8.4vw,2.2rem); }
  .project-info h3{ font-size:1.4rem; }
  .project-media--triple, .project-nav{
    margin-left:-14px; margin-right:-14px; padding-left:14px; padding-right:14px;
  }
  .project-media--triple img,
  .project-media--triple img:first-child{ flex-basis:88%; }
  .about-facts{ gap:14px 18px; }
  .about-facts div{ min-width:calc(50% - 9px); }
  .contact-tile-ic{ width:40px;height:40px; }
}

/* ===== První kontakt – popup okno s dlaždicemi ===== */
.contact-pop{
  display:none;position:fixed;inset:0;z-index:120;
  align-items:center;justify-content:center;padding:24px;
}
.contact-pop.open{display:flex;animation:contactPopFade .25s ease;}
@keyframes contactPopFade{from{opacity:0;}to{opacity:1;}}
.contact-pop-backdrop{
  position:absolute;inset:0;
  background:rgba(6,7,10,.88);backdrop-filter:blur(6px);
}
.contact-pop-dialog{
  position:relative;z-index:1;
  width:min(480px,100%);
  background:var(--bg-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:34px 30px 30px;
  box-shadow:0 24px 60px rgba(0,0,0,.5);
  animation:contactPopIn .3s cubic-bezier(.2,.8,.2,1);
}
@keyframes contactPopIn{
  from{opacity:0;transform:translateY(16px) scale(.98);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
.contact-pop-close{
  position:absolute;top:14px;right:16px;
  background:none;border:none;color:var(--text-dim);
  font-size:2rem;line-height:1;cursor:pointer;padding:0 6px;transition:color .2s;
}
.contact-pop-close:hover{color:var(--accent);}
.contact-pop-dialog h3{
  font-family:'Barlow Semi Condensed',sans-serif;font-size:1.4rem;color:var(--text);margin:0 0 .35em;
}
.contact-pop-lede{margin:0 0 22px;color:var(--text-dim);font-size:.95rem;}
.contact-tiles{display:grid;gap:12px;}
.contact-tile{
  display:flex;align-items:center;gap:14px;
  padding:15px 16px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  transition:border-color .2s,background .2s,transform .15s;
}
.contact-tile:hover{border-color:var(--accent);transform:translateY(-1px);}
.contact-tile-ic{
  flex:0 0 auto;width:44px;height:44px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(208,104,79,.14);color:var(--accent);
}
.contact-tile-ic svg{width:22px;height:22px;}
.contact-tile-meta{display:flex;flex-direction:column;min-width:0;}
.contact-tile-label{font-size:.78rem;color:var(--text-dim);margin-bottom:2px;}
.contact-tile-val{
  font-size:.98rem;font-weight:600;color:var(--text);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.contact-tile-arr{margin-left:auto;color:var(--text-dim);transition:color .2s,transform .2s;}
.contact-tile:hover .contact-tile-arr{color:var(--accent);transform:translate(2px,-2px);}

@media (max-width:480px){
  .contact-pop{padding:14px;}
  .contact-pop-dialog{padding:28px 20px 22px;}
  .contact-tile-val{font-size:.9rem;}
}

/* dlaždice ve spodní sekci Kontakt */
.contact-tiles--section{
  max-width:480px;
  margin:34px auto 0;
  text-align:left;
}

/* ===== Coincast – popup s epizodami ===== */
.coincast-modal{
  display:none;position:fixed;inset:0;z-index:115;
  align-items:center;justify-content:center;padding:24px;
}
.coincast-modal.open{display:flex;animation:contactPopFade .25s ease;}
.coincast-backdrop{
  position:absolute;inset:0;
  background:rgba(6,7,10,.88);backdrop-filter:blur(6px);
}
.coincast-dialog{
  position:relative;z-index:1;
  width:min(980px,100%);max-height:88vh;overflow:auto;
  background:var(--bg-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:0 24px 60px rgba(0,0,0,.5);
  animation:contactPopIn .3s cubic-bezier(.2,.8,.2,1);
}
.coincast-head{
  position:sticky;top:0;z-index:2;
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding:20px 26px;
  background:var(--bg-soft);
  border-bottom:1px solid var(--border);
}
.coincast-title{font-family:'Barlow Semi Condensed',sans-serif;font-size:1.35rem;color:var(--text);margin:0;}
.coincast-close{
  background:none;border:none;color:var(--text-dim);
  font-size:2rem;line-height:1;cursor:pointer;padding:0 6px;transition:color .2s;
}
.coincast-close:hover{color:var(--accent);}
.coincast-grid{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:16px;padding:22px 26px 26px;
}
.coincast-card{
  display:flex;flex-direction:column;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;overflow:hidden;
  transition:border-color .2s,transform .15s;
}
.coincast-card:hover{border-color:var(--accent);transform:translateY(-2px);}
.coincast-cover{aspect-ratio:16/9;overflow:hidden;background:#131110;}
.coincast-cover img{width:100%;height:100%;object-fit:cover;}
.coincast-info{padding:16px 18px 18px;}
.coincast-info h4{
  font-family:'Barlow Semi Condensed',sans-serif;
  font-size:1.1rem;color:var(--text);margin:0 0 6px;line-height:1.2;
}
.coincast-info p{font-size:.9rem;margin:0 0 12px;}
.coincast-link{color:var(--accent);font-weight:600;font-size:.85rem;}

@media (max-width:720px){
  .coincast-modal{padding:12px;}
  .coincast-dialog{max-height:92vh;}
  .coincast-head{padding:16px 18px;}
  .coincast-grid{grid-template-columns:1fr;gap:12px;padding:16px 18px 18px;}
}
