/* Podkarpackie Forum Uro-Onkologii — vanilla CSS */
:root{
  --ink: oklch(0.16 0.04 245);
  --ink-2: oklch(0.21 0.045 245);
  --cyan: oklch(0.78 0.13 210);
  --mint: oklch(0.82 0.14 165);
  --champagne: oklch(0.85 0.07 90);
  --paper: oklch(0.985 0.005 220);
  --steel: oklch(0.32 0.03 240);
  --quiet: oklch(0.62 0.02 240);
  --bg: var(--ink);
  --fg: oklch(0.96 0.01 220);
  --card: oklch(0.21 0.045 245);
  --muted-fg: oklch(0.7 0.02 240);
  --border: oklch(1 0 0 / 0.08);
  --primary: var(--cyan);
  --primary-fg: oklch(0.14 0.04 245);

  --font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Manrope", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;

  --shadow-soft: 0 18px 60px -20px oklch(0.12 0.04 240 / 0.35);
  --gradient-hero:
    radial-gradient(80% 60% at 70% 20%, oklch(0.55 0.14 200 / 0.25), transparent 60%),
    radial-gradient(60% 50% at 10% 90%, oklch(0.78 0.15 165 / 0.18), transparent 65%),
    linear-gradient(180deg, oklch(0.16 0.04 245), oklch(0.11 0.035 250));
  --max: 80rem;
}

*,*::before,*::after{box-sizing:border-box;border-color:var(--border);}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--gradient-hero);background-attachment:fixed;
  color:var(--fg);font-family:var(--font-body);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  min-height:100vh;line-height:1.5;
}
h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-0.02em;font-weight:500;margin:0;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
ul,ol{margin:0;padding:0;list-style:none;}
img,svg{display:block;max-width:100%;}
::selection{background:oklch(0.78 0.13 210 / 0.35);color:oklch(0.98 0.01 220);}

.container{max-width:var(--max);margin:0 auto;padding:0 1.5rem;}
@media(min-width:1024px){.container{padding:0 2.5rem;}}

.font-display{font-family:var(--font-display);}
.font-mono{font-family:var(--font-mono);}
.text-cyan{color:var(--cyan);}
.text-mint{color:var(--mint);}
.text-quiet{color:var(--quiet);}
.text-muted{color:var(--muted-fg);}
.text-fg{color:var(--fg);}

.label-eyebrow{
  font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.22em;
  text-transform:uppercase;color:var(--cyan);
}

.glass-card{
  border:1px solid var(--border);
  background:linear-gradient(145deg, oklch(1 0 0 / 0.04), oklch(1 0 0 / 0.015));
  box-shadow:var(--shadow-soft), inset 0 1px 0 oklch(1 0 0 / 0.06);
  backdrop-filter:blur(18px);
}

.hairline{
  background:linear-gradient(90deg, transparent, oklch(0.85 0.07 90 / 0.4), transparent);
  height:1px;
}

.text-gradient{
  background:linear-gradient(100deg, oklch(0.96 0.01 220) 0%, oklch(0.78 0.13 210) 50%, oklch(0.82 0.14 165) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

.grid-bg{
  background-image:
    linear-gradient(oklch(1 0 0 / 0.04) 1px, transparent 1px),
    linear-gradient(90deg, oklch(1 0 0 / 0.04) 1px, transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(ellipse at center, black 40%, transparent 80%);
  mask-image:radial-gradient(ellipse at center, black 40%, transparent 80%);
}

/* Reveal animations */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 1s cubic-bezier(.19,1,.22,1), transform 1s cubic-bezier(.19,1,.22,1);}
.reveal.in{opacity:1;transform:translateY(0);}

@keyframes ping{75%,100%{transform:scale(2.4);opacity:0;}}
.ping{animation:ping 1.6s cubic-bezier(0,0,0.2,1) infinite;}

/* CTA shimmer */
.btn{display:inline-flex;align-items:center;gap:0.5rem;font-weight:500;border-radius:9999px;transition:background .3s, color .3s, border-color .3s;cursor:pointer;}
.btn-primary{background:var(--primary);color:var(--primary-fg);padding:0.875rem 1.5rem;}
.btn-primary:hover{background:oklch(0.78 0.13 210 / 0.9);}
.btn-ghost{padding:0.875rem 1.5rem;border:1px solid var(--border);color:var(--fg);}
.btn-ghost:hover{border-color:oklch(0.78 0.13 210 / 0.4);}
.btn-sm{padding:0.5rem 1rem;font-size:0.875rem;}
@media(max-width:768px){.actions .btn{scale: 0.85; padding:0.875rem 1.1rem; ;}}
.cta-shimmer{position:relative;overflow:hidden;isolation:isolate;}
.cta-shimmer::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg, transparent 30%, oklch(1 0 0 / 0.18) 50%, transparent 70%);
  transform:translateX(-120%);transition:transform .9s cubic-bezier(.19,1,.22,1);}
.cta-shimmer:hover::after{transform:translateX(120%);}

.tilt-card{transition:transform .6s cubic-bezier(.19,1,.22,1), border-color .4s;}
.tilt-card:hover{transform:translateY(-4px) translateX(2px);border-color:oklch(0.78 0.13 210 / 0.4);}

/* Header */
.header{position:fixed;top:0;left:0;right:0;z-index:50;backdrop-filter:blur(18px);
  background:oklch(0.16 0.04 245 / 0.65);border-bottom:1px solid var(--border);}
.header-inner{height:4rem;display:flex;align-items:center;justify-content:space-between;}
.logo{display:flex;align-items:center;gap:0.75rem;}
.logo-mark{position:relative;width:2rem;height:2rem;}
.logo-mark > div{position:absolute;}
.logo-mark .l1{inset:0;border:1px solid oklch(0.78 0.13 210 / 0.4);border-radius:.375rem;}
.logo-mark .l2{inset:.375rem;background:oklch(0.78 0.13 210 / 0.2);border-radius:.125rem;}
.logo-mark .l3{inset:0;border:1px solid oklch(0.82 0.14 165 / 0.3);border-radius:.375rem;transform:rotate(45deg);}
.logo-text{line-height:1.15;}
.logo-text-1{font-family:var(--font-display);font-size:.875rem;}
.logo-text-2{font-family:var(--font-mono);font-size:.65rem;color:var(--quiet);letter-spacing:.2em;text-transform:uppercase;margin-top:2px;}

.nav{display:none;gap:2rem;font-size:.875rem;color:var(--muted-fg);}
.nav a{transition:color .3s;}
.nav a:hover{color:var(--fg);}
@media(min-width:768px){.nav{display:flex;align-items:center;}}

/* Hero */
.ticker{display: none;}
.hero{position:relative;padding:8rem 0 6rem;overflow:hidden;}
@media(min-width:1024px){.hero{padding:10rem 0 6rem } .ticker{display: block;}}
.hero-bg{position:absolute;inset:0;pointer-events:none;}
.hero-img{position:absolute;inset:0 0 0 auto;width:100%;opacity:.7;pointer-events:none;
  background-size:cover;background-position:center right;
  -webkit-mask-image:linear-gradient(180deg, black 60%, transparent 100%);
  mask-image:linear-gradient(180deg, black 60%, transparent 100%);}
@media(min-width:1024px){.hero-img{width:58%;opacity:.9;}}
.hero-grid{position:relative;display:grid;gap:2.5rem;align-items:end;grid-template-columns:1fr;}
@media(min-width:1024px){.hero-grid{grid-template-columns:repeat(12,1fr);}}
.hero-main{grid-column:span 1;}
@media(min-width:1024px){.hero-main{grid-column:span 8;}; .ticker{display: none;}}
.hero-side{}
@media(min-width:1024px){.hero-side{grid-column:span 4;transform:translateY(1rem);}}

.chip{display:inline-flex;align-items:center;gap:.75rem;padding:.375rem .75rem;border-radius:9999px;border:1px solid var(--border);background:oklch(0.21 0.045 245 / 0.4);}
.dot{position:relative;display:inline-flex;width:.375rem;height:.375rem;}
.dot .ring{position:absolute;inset:0;border-radius:9999px;background:oklch(0.82 0.14 165 / 0.6);}
.dot .core{position:relative;width:.375rem;height:.375rem;border-radius:9999px;background:var(--mint);}

.h1{margin-top:2rem;font-family:var(--font-display);font-size:clamp(2.75rem, 7vw, 5.5rem);line-height:.95;letter-spacing:-.02em;font-weight:500;}
.lead{margin-top:1.5rem;font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,1.875rem);color:oklch(0.96 0.01 220 / .9);max-width:42rem;}
.sub{margin-top:1.5rem;max-width:36rem;color:var(--muted-fg);font-size:1.0625rem;line-height:1.7;}
.actions{margin-top:2.5rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;}

.date-card{padding:1.5rem;border-radius:1rem;}
.date-big{margin-top:1rem;font-family:var(--font-display);font-size:1.875rem;line-height:1.1;}
.date-year{margin-top:.25rem;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);}
.date-meta{margin-top:1.25rem;display:flex;align-items:center;gap:1rem;font-size:.75rem;font-family:var(--font-mono);color:var(--quiet);text-transform:uppercase;letter-spacing:.15em;}
.date-meta .sep{width:.25rem;height:.25rem;border-radius:9999px;background:var(--quiet);}

.ticker{margin-top:5rem;border-top:1px solid var(--border);}
.ticker-inner{padding:1rem 0;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.22em;}

/* Sections shared */
.section{padding:4rem 0;}
@media(min-width:1024px){.section{padding:9rem 0;}}
.section-bordered{border-top:1px solid var(--border);}
.section-title{margin-top:1rem;font-family:var(--font-display);font-size:clamp(1.875rem, 3.6vw, 3rem);line-height:1.1;}

/* Idea */
.idea-grid{display:grid;gap:2.5rem;grid-template-columns:1fr;}
@media(min-width:1024px){.idea-grid{grid-template-columns:repeat(12,1fr);}}
.idea-left{grid-column:span 4;}
.idea-right{grid-column:span 8;}
@media(min-width:1024px){.idea-right{padding-left:2.5rem;border-left:1px solid var(--border);}}
.idea-quote{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.2;color:oklch(0.96 0.01 220 / .95);}
.idea-three{margin-top:2.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;}
@media(min-width:640px){.idea-three{grid-template-columns:repeat(3,1fr);}}
.kv-k{font-family:var(--font-mono);font-size:.75rem;color:var(--cyan);letter-spacing:.2em;text-transform:uppercase;}
.kv-v{margin-top:.5rem;font-size:.875rem;color:var(--muted-fg);}

/* Filary */
.filary-head{display:flex;align-items:end;justify-content:space-between;gap:2.5rem;}
.filary-head p{display:none;max-width:22rem;font-size:.875rem;color:var(--muted-fg);}
@media(min-width:768px){.filary-head p{display:block;}}
.filary-grid{margin-top:3.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;}
@media(min-width:1024px){.filary-grid{grid-template-columns:repeat(3,1fr);}}
.filar{padding:2rem;border-radius:1rem;}
@media(min-width:1024px){.filar{padding:2.5rem;} .filar.shift-down{transform:translateY(1.5rem);} .filar.shift-up{transform:translateY(-.5rem);}}
.filar-top{display:flex;align-items:start;justify-content:space-between;}
.filar-no{font-family:var(--font-mono);font-size:.75rem;color:var(--cyan);letter-spacing:.22em;}
.filar h3{margin-top:2.5rem;font-size:1.5rem;}
@media(min-width:1024px){.filar h3{font-size:1.875rem;}}
.filar p{margin-top:1rem;color:var(--muted-fg);line-height:1.6;}
.tags{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.5rem;}
.tag{font-size:.75rem;padding:.25rem .625rem;border-radius:9999px;border:1px solid var(--border);color:var(--muted-fg);}

/* Program */
.program-head{display:grid;gap:2.5rem;grid-template-columns:1fr;align-items:end;}
@media(min-width:1024px){.program-head{grid-template-columns:repeat(12,1fr);}}
.program-head .l{grid-column:span 7;}
.program-head .r{grid-column:span 5;font-size:.875rem;color:var(--muted-fg);}
@media(min-width:1024px){.program-head .r{text-align:right;}}
.program-list{margin-top:3.5rem;position:relative;}
.program-list .rail{position:absolute;left:7.5rem;top:.5rem;bottom:.5rem;width:1px;background:var(--border);display:none;}
@media(min-width:768px){.program-list .rail{display:block;}}
.program-item{position:relative;display:grid;grid-template-columns:1fr;gap:.75rem 1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--border);}
.program-item:last-child{border-bottom:0;}
@media(min-width:768px){.program-item{grid-template-columns:7rem 1.5rem 1fr;}}
.program-time{font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.2em;padding-top:.25rem;}
.program-bullet{display:none;justify-content:center;padding-top:.5rem;}
@media(min-width:768px){.program-bullet{display:flex;}}
.program-bullet span{width:.5rem;height:.5rem;border-radius:9999px;background:var(--cyan);transition:transform .3s;}
.program-item:hover .program-bullet span{transform:scale(1.5);}
.program-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;}
.program-block{font-family:var(--font-mono);font-size:.75rem;color:var(--cyan);letter-spacing:.2em;text-transform:uppercase;}
.program-tag{font-size:.75rem;padding:.125rem .5rem;border-radius:9999px;border:1px solid oklch(0.82 0.14 165 / 0.3);color:var(--mint);}
.program-title{margin-top:.5rem;font-family:var(--font-display);font-size:1.25rem;color:oklch(0.96 0.01 220 / .95);transition:color .3s;}
@media(min-width:1024px){.program-title{font-size:1.5rem;}}
.program-item:hover .program-title{color:var(--cyan);}
.program-desc{margin-top:.5rem;font-size:.875rem;color:var(--muted-fg);max-width:42rem;line-height:1.6;}

/* Prelegenci */
.pre-grid{margin-top:3.5rem;display:grid;gap:1px;background:var(--border);border-radius:1rem;overflow:hidden;grid-template-columns:1fr;}
@media(min-width:640px){.pre-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.pre-grid{grid-template-columns:repeat(3,1fr);}}
.pre{background:var(--bg);padding:2rem;transition:background .3s;}
.pre:hover{background:var(--card);}
.pre-top{display:flex;align-items:start;justify-content:space-between;}
.pre-no{font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);}
.pre-avatar{width:2.5rem;height:2.5rem;border-radius:9999px;background:linear-gradient(135deg, oklch(0.78 0.13 210 / 0.2), oklch(0.82 0.14 165 / 0.1));border:1px solid var(--border);display:grid;place-items:center;font-size:.75rem;font-family:var(--font-mono);color:var(--cyan);}
.pre-name{margin-top:3rem;font-family:var(--font-display);font-size:1.125rem;color:oklch(0.96 0.01 220 / .95);}
.pre-role{margin-top:.25rem;font-size:.875rem;color:var(--cyan);}
.pre-aff{margin-top:.75rem;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.1em;}
.pre-spec{margin-top:1rem;font-size:.875rem;color:var(--muted-fg);max-width:18rem;opacity:0;transition:opacity .5s;}
.pre:hover .pre-spec{opacity:1;}

/* DlaKogo */
.dk-grid{display:grid;gap:2.5rem;grid-template-columns:1fr;}
@media(min-width:1024px){.dk-grid{grid-template-columns:repeat(12,1fr);}}
.dk-left{grid-column:span 5;}
.dk-right{grid-column:span 7;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.dk-li{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;border-bottom:1px solid var(--border);transition:padding .3s;}
.dk-li:last-child{border-bottom:0;}
.dk-li:hover{padding-left:.5rem;padding-right:.5rem;}
.dk-li .L{display:flex;align-items:center;gap:1.5rem;}
.dk-num{font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);}
.dk-name{font-family:var(--font-display);font-size:1.125rem;text-transform:capitalize;}
@media(min-width:1024px){.dk-name{font-size:1.25rem;}}
.dk-arrow{font-family:var(--font-mono);font-size:.75rem;color:var(--cyan);opacity:0;transition:opacity .3s;}
.dk-li:hover .dk-arrow{opacity:1;}

/* Powody */
.powody{margin-top:3.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;}
@media(min-width:768px){.powody{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.powody{grid-template-columns:repeat(3,1fr);}}
.powod{padding:1.5rem;border-radius:.75rem;}
.powod-top{display:flex;align-items:baseline;justify-content:space-between;}
.powod-k{font-family:var(--font-display);font-size:1.25rem;color:oklch(0.96 0.01 220 / .95);}
.powod-i{font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);}
.powod p{margin-top:.25rem;font-size:.875rem;color:var(--muted-fg);line-height:1.6;}

/* Miejsce */
.miejsce-grid{display:grid;gap:2.5rem;grid-template-columns:1fr;}
@media(min-width:1024px){.miejsce-grid{grid-template-columns:repeat(12,1fr);}}
.miejsce-left{grid-column:span 5;}
.miejsce-right{grid-column:span 7;}
.row{display:flex;align-items:start;gap:1.5rem;border-bottom:1px solid var(--border);padding-bottom:.75rem;}
.row .k{width:7rem;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.2em;padding-top:.25rem;}
.row .v{flex:1;color:oklch(0.96 0.01 220 / .9);}
.map{padding:.5rem;border-radius:1rem;aspect-ratio:16/11;overflow:hidden;position:relative;}
.map .grid-bg{position:absolute;inset:0;opacity:.6;}
.map svg{position:absolute;inset:0;width:100%;height:100%;}
.map .coords{position:absolute;left:1rem;right:1rem;bottom:1rem;display:flex;align-items:end;justify-content:space-between;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.2em;}

/* Final CTA */
.final{padding:8rem 0;position:relative;overflow:hidden;}
@media(min-width:1024px){.final{padding:11rem 0;}}
.final .container{max-width:64rem;text-align:center;position:relative;}
.final h2{margin-top:1.5rem;font-family:var(--font-display);font-size:clamp(2.25rem, 5vw, 4.5rem);line-height:.98;}
.final p{margin:2rem auto 0;max-width:42rem;color:var(--muted-fg);font-size:1.125rem;line-height:1.7;}
.final .actions{margin-top:3rem;justify-content:center;}
.btn-link{padding:1rem 1.75rem;color:var(--muted-fg);}
.btn-link:hover{color:var(--fg);}

/* Footer */
.footer{border-top:1px solid var(--border);}
.footer-grid{display:grid;gap:2.5rem;grid-template-columns:1fr;padding:3rem 0;}
@media(min-width:640px){.footer-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(4,1fr);}}
.footer-bottom{border-top:1px solid var(--border);}
.footer-bottom-inner{padding:1.25rem 0;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.75rem;color:var(--quiet);text-transform:uppercase;letter-spacing:.22em;}
@media(max-width:1024px){.footer-bottom-inner{flex-direction: column; padding: 1em 2em; text-align: center;}}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important;}
  .reveal{opacity:1;transform:none;}
}
