/* Slow Medicine 2026 — editorial refinement. Original typefaces and assets retained. */
:root{--paper:#f9f8f5;--fog:#efeeeb;--coal:#101010;--line-d:rgba(255,255,255,.15);--ease-lux:cubic-bezier(.19,1,.22,1)}
body{background:#050505}
:focus-visible{outline:2px solid #e05357;outline-offset:6px}
button,a{-webkit-tap-highlight-color:transparent}
.btn{transition:color .45s,border-color .45s,box-shadow .5s}
.btn .ico{transition:transform .5s var(--ease-lux)}
.btn:hover .ico{transform:translateX(4px)}
.btn--red{background:#9b0000}
.btn--red:hover{box-shadow:0 8px 36px #94000020}
.nav.is-solid{background:rgba(5,5,5,.91);backdrop-filter:blur(22px)}
.nav__links a{background-size:0 1px;background-position:0 100%}
.nav__links a.is-on{color:#fff}
.nav__links a.is-on::before{content:'';display:inline-block;width:4px;height:4px;margin:0 7px 2px 0;background:#c3292e}
.pre{min-height:100svh;padding-bottom:120px;padding-top:70px}
.pre__mark{max-width:calc(100vw - 40px)}
.pre__footer{position:absolute;left:var(--gut);right:var(--gut);bottom:calc(25px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:18px;border-top:1px solid #ffffff25}
.pre__meta,.pre__skip{position:static;bottom:auto;left:auto;right:auto;font-size:10px;letter-spacing:.17em;color:#d4d1cf}
.pre__meta span{margin:0 10px;color:#c8272e}
.pre__skip{min-height:44px;flex:none;display:flex;align-items:center;gap:26px}
.pre__skip span{font-size:20px;color:#fff}
.pre__skip:hover{color:#fff}
.hero__num{opacity:.25}
.hero__media video,.hero__media img{transform:scale(1.015)}
.hero__media::after{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.43) 40%,rgba(0,0,0,.05) 72%),linear-gradient(0deg,#000 0%,transparent 53%)}
.hero__band{min-height:clamp(100px,16vh,155px);background:linear-gradient(90deg,transparent,#820509ba 18%,#a30c12de 72%,#800000d6);backdrop-filter:blur(3px)}
.hero__tag p{font-weight:300;line-height:1.7;border-left-color:#ffffff70}
.hero__bar{background:#080808a8;backdrop-filter:blur(18px)}
.hero__side{font-size:9px;letter-spacing:.25em}
.play__i{border-radius:50%;width:48px;height:48px;border-color:#ffffff45}
.play{font-size:10px;letter-spacing:.18em}
.hb b{font-weight:400}
.std__date{letter-spacing:-.045em}
.std__img{overflow:hidden}
.std__img img{transition:transform 1.5s var(--ease-lux)}
.std:hover .std__img img{transform:scale(1.035)}
/* Film chapters: wide images, measured asymmetry, no graphics over the films. */
.reel-sec{background:#080808;border-top:1px solid #ffffff0d;isolation:isolate;padding-block:clamp(80px,10vw,160px)}
.reel-sec::before{content:'';position:absolute;width:50vw;height:1px;left:0;top:0;background:linear-gradient(90deg,#a10d15,transparent);opacity:.7}
.reel-sec::after{content:'';position:absolute;width:70vw;height:70vw;right:-40vw;top:-12vw;background:radial-gradient(ellipse,#6b07121c,transparent 65%);z-index:-1;pointer-events:none}
.reel-sec--flip::before{left:auto;right:0;transform:rotate(180deg)}
.reel-sec__txt .lbl-wide{font-size:10px;letter-spacing:.25em;color:#d85c60}
.reel-sec__txt h2{font-size:clamp(35px,3.6vw,61px);line-height:1.03;margin:25px 0 30px}
.reel-sec__txt p{color:#a9a5a3;font-size:14px;line-height:1.85}
.reel-sec__txt .lead{color:#e6e2df;font-size:16px;line-height:1.75}
.reel-sec__txt .btn{font-size:10px;letter-spacing:.14em;min-height:52px}
.reel__frame{border:0;box-shadow:0 28px 70px #0005}
.reel__frame::after{display:none}
.reel__v{object-fit:contain}
.film-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;border-bottom:1px solid #ffffff24;color:#b9b5b2;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.film-controls__actions{display:flex;align-items:center;gap:14px}
.film-controls__actions>span{color:#575453}
.film-controls button{min-height:44px;font:inherit;text-transform:inherit;transition:color .25s}
.film-controls button:hover{color:#fff}
.film-expand{display:flex;gap:15px;align-items:center}
.film-expand span{font-size:19px;font-weight:300}
.tw-row{gap:10px;margin-top:18px;grid-template-columns:repeat(4,minmax(0,1fr))}
.tw{border:0;aspect-ratio:1.44;overflow:hidden;opacity:.78;transition:opacity .5s,transform .6s var(--ease-lux)}
.tw:hover,.tw:focus-visible{opacity:1;transform:translateY(-4px)}
.tw img{transition:transform 1s var(--ease-lux),filter .6s}
.tw:hover img{transform:scale(1.075)}
/* City panorama: photograph untouched, movement lives in the presentation. */
.destination{position:relative;isolation:isolate;overflow:hidden;background:#030303;min-height:740px;height:min(900px,90svh);color:#f9f8f5}
.destination__image{position:absolute;inset:14% -3% -5%;z-index:-2;transform:translate3d(0,var(--city-offset,0px),0);will-change:transform}
.destination__image img{width:100%;height:100%;object-fit:contain;object-position:center 76%;opacity:.85}
.destination::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#030303,transparent 28%,transparent 62%,#030303 98%)}
.destination__halo{position:absolute;z-index:-2;inset:15% 0 -20%;pointer-events:none;background:radial-gradient(ellipse at 58% 79%,#7e051b29,transparent 46%);opacity:.7}
.destination__content{height:100%;display:flex;flex-direction:column;padding-top:42px;padding-bottom:44px}
.destination__top{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #ffffff28;padding-top:25px;color:#a8a4a1}
.destination__top .lbl-wide{font-size:10px;letter-spacing:.23em}
.destination__top .lbl{font-size:9px;letter-spacing:.19em}
.destination__title{position:relative;margin-top:clamp(55px,7vw,100px)}
.destination__title .lbl{color:#cb4f55}
.destination__title h2{font-size:clamp(74px,12vw,190px);line-height:1.02;letter-spacing:-.055em;margin-top:15px}
.destination__dot{color:#a91721}
.destination__bottom{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:22px;border-bottom:1px solid #ffffff25;padding-bottom:25px}
.destination__bottom p{font-family:var(--serif);font-size:28px;font-weight:300;line-height:1.3}
.destination__bottom p span{display:block;font:400 10px/1.6 var(--sans);letter-spacing:.13em;margin-top:8px;color:#aaa5a1}
.destination__bottom a{font-size:10px}
/* Partner gallery. Each brand is an accessible, individually framed exhibit. */
.wall-sec{background:radial-gradient(ellipse at 5% 0,#37090c3b,transparent 55%),#080808;padding-block:clamp(80px,10vw,155px)}
.wall__head{align-items:center}
.wall__head h2{max-width:19ch;font-size:clamp(36px,4.4vw,69px);line-height:1.05}
.wall__head .lbl-wide{font-size:10px;color:#c95459}
.wall__head .btn{font-size:10px;min-height:52px}
.wall__label{color:#bbb5b0;letter-spacing:.22em;padding-bottom:20px;border:0;display:flex;gap:20px;align-items:center}
.wall__label::after{content:'';flex:1;height:1px;background:#ffffff20}
.wall,.wall--media{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0;margin-bottom:52px}
.wall--media{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:0}
.wall__it{display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;aspect-ratio:1.55;min-height:158px;padding:26px 22px 45px;background:linear-gradient(140deg,#1b1b1b,#121212);border:1px solid #ffffff13;isolation:isolate;cursor:pointer;overflow:hidden;transition:border-color .5s,background .5s,box-shadow .5s,transform .6s var(--ease-lux)}
.wall__it::after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 110%,#a3081b36,transparent 68%);opacity:0;transform:none;transition:opacity .6s}
.wall__it:hover::after,.wall__it:focus-visible::after{opacity:1;transform:none}
.wall__it:hover,.wall__it:focus-visible{border-color:#a13a3c99;box-shadow:0 15px 45px #0005;transform:translateY(-3px)}
.wall__art{position:relative;display:block;width:min(88%,calc(var(--logo-ratio)*68px));aspect-ratio:var(--logo-ratio);overflow:hidden;transition:transform .7s var(--ease-lux)}
.wall__it .wall__art img{position:absolute;max-width:none;object-fit:fill;opacity:1;transform:none;filter:none;transition:none;right:auto;bottom:auto}
.wall__it--reverse .wall__art img{filter:invert(1) hue-rotate(180deg)}
.wall__it--mixed .wall__art img{filter:url(#logo-readable-ink)}
.wall__it[data-logo-name="BTL"] .wall__art img{filter:brightness(1.8)}
.wall__it:hover .wall__art,.wall__it:focus-visible .wall__art{transform:scale(1.055)}
.wall__name{position:absolute;bottom:16px;left:16px;right:28px;font-size:9px;line-height:1.4;letter-spacing:.065em;text-align:left;color:#9f9a96;transition:color .5s}
.wall__arrow{position:absolute;right:15px;bottom:13px;font-size:18px;color:#6b6662;transition:color .5s,transform .5s}
.wall__it:hover .wall__name,.wall__it:focus-visible .wall__name{color:#eeebe6}
.wall__it:hover .wall__arrow{transform:translate(2px,-2px);color:#d85c60}
.wall--media .wall__it{min-height:145px}
.wall--media .wall__art{width:min(82%,calc(var(--logo-ratio)*58px))}
.logo-dialog{position:fixed;inset:0;z-index:240;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:#040404ee;backdrop-filter:blur(20px)}
.logo-dialog[hidden]{display:none}
.logo-dialog__close{position:absolute;right:var(--gut);top:calc(20px + env(safe-area-inset-top,0px));min-height:48px;padding:0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.13em;display:flex;align-items:center;gap:18px}
.logo-dialog__close span{font-size:28px;font-weight:300}
.logo-dialog__stage{display:grid;place-items:center;width:min(740px,92vw);height:min(420px,58vh);background:#d2c9b9;padding:30px;border:1px solid #ffffff20}
.logo-dialog__stage img{max-width:100%;max-height:100%;object-fit:contain}
.logo-dialog__name{margin-top:28px;font-family:var(--serif);font-size:clamp(26px,4vw,42px);text-align:center}
.logo-dialog__eyebrow{font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#a29b94;margin-top:14px}
/* A shared editorial language across every subpage. */
.phead{position:relative;isolation:isolate;overflow:hidden;background:#080808;padding-bottom:clamp(55px,7vw,100px);border-bottom:1px solid #ffffff19}
.phead::before{content:'';position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,#080808 15%,#0808088a 62%,#08080842),var(--chapter-image,none);background-size:cover;background-position:center,right 37%;opacity:.48}
.phead::after{content:'';position:absolute;bottom:0;left:var(--gut);height:1px;width:clamp(70px,15vw,250px);background:#b31621;transform-origin:left;animation:chapter-line 1.4s var(--ease-lux) both}
.phead .lbl-wide{font-size:10px;letter-spacing:.24em;color:#d05a60}
.phead h1{margin-top:18px}
.phead .lead{max-width:58ch;color:#b9b2ae;font-weight:300}
.view.is-active .phead h1{animation:chapter-in 1.05s var(--ease-lux) both}
.view.is-active .phead .lead{animation:chapter-in 1.15s .1s var(--ease-lux) both}
[data-view="konferencja"] .phead{--chapter-image:url('../zdjecia/oko-konia.webp')}
[data-view="program"] .phead{--chapter-image:url('../zdjecia/03_1.webp')}
[data-view="prelegenci"] .phead{--chapter-image:url('../zdjecia/pdf-warszawa.webp')}
[data-view="bilety"] .phead,[data-view="zostan-partnerem"] .phead,[data-view="kontakt"] .phead{--chapter-image:url('../zdjecia/warszawa-noc.webp')}
[data-view="galeria"] .phead{--chapter-image:url('../zdjecia/DSC_4342.webp')}
[data-view="podcast"] .phead{--chapter-image:url('../zdjecia/02.webp')}
.cardlink{position:relative;padding-block:36px;transition:background .5s,color .5s}
.cardlink>.ico{transition:transform .6s var(--ease-lux)}
.cardlink:hover>.ico{transform:translateX(6px)}
.cardlink:hover{background:#e8e5df}
.mini__it{transition:background .5s;position:relative}
.mini__it:hover{background:#e4e1dc}
.tk{transition:transform .6s var(--ease-lux),box-shadow .6s}
.tk:hover{transform:translateY(-5px);box-shadow:0 24px 50px #0002}
.acc__btn{transition:background .4s,padding .4s}
.acc__btn:hover{background:#8888880c}
.foot{background:#050505}
.man{background:radial-gradient(ellipse at 50% 100%,#82020a,#360004 75%)}
/* Progressive enhancement: content remains visible if JS is unavailable. */
.lux-reveal{transition:opacity 1s var(--ease-lux),translate 1.25s var(--ease-lux);transition-delay:var(--reveal-delay,0ms)}
.lux-reveal.is-waiting{opacity:0;translate:0 28px}
@keyframes chapter-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes chapter-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes city-breathe{from{opacity:.4}to{opacity:1}}
.destination.is-visible .destination__halo{animation:city-breathe 6s ease-in-out infinite alternate}
@media(min-width:1000px){
 .reel-sec__txt{grid-column:1 / span 4}
 .reel-sec__media{grid-column:6 / span 7}
 .reel-sec--flip .reel-sec__txt{grid-column:9 / span 4}
 .reel-sec--flip .reel-sec__media{grid-column:1 / span 7}
}
@media(max-width:1000px){
 .wall{grid-template-columns:repeat(3,minmax(0,1fr))}
 .wall--media{grid-template-columns:repeat(3,minmax(0,1fr))}
 .destination{min-height:650px;height:80svh}
 .destination__image{inset:25% -10% 3%}
 .destination__title{margin-top:70px}
 .reel-sec__txt h2{font-size:clamp(33px,4vw,48px)}
}
@media(max-width:760px){
 .reel-sec__media{grid-row:1!important;margin-bottom:35px}
 .reel-sec__txt{grid-row:2!important}
 .reel-sec__txt h2{max-width:19ch}
 .reel-sec__txt .lead{max-width:46ch}
 .destination{min-height:600px;height:80svh}
 .destination__top{flex-direction:column;gap:8px;padding-top:18px}
 .destination__title{margin-top:46px}
 .destination__image{inset:28% -20% 9%}
 .destination__image img{object-position:center 60%}
 .destination__bottom p{font-size:25px}
 .destination__bottom a{font-size:9px;letter-spacing:.08em}
 .wall,.wall--media{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .wall__it{min-height:145px;padding-inline:15px}
 .wall__art{width:min(85%,calc(var(--logo-ratio)*58px))}
 .wall__head .btn{width:auto}
 .wall__head{gap:30px}
 .wall__name{font-size:8px;left:12px}

 .phead .lead{font-size:16px}
 .tw-row{gap:8px}
}
@media(max-width:520px){
 .pre{padding-bottom:130px}
 .pre__w{font-size:clamp(56px,15.7vw,82px)}
 .pre__footer{flex-direction:column;align-items:stretch;gap:4px;bottom:calc(18px + env(safe-area-inset-bottom,0px));padding-top:14px}
 .pre__meta{text-align:center;font-size:8px;letter-spacing:.12em}
 .pre__skip{justify-content:center;min-height:46px;font-size:9px}
 .pre__g,.pre__c{font-size:10px;letter-spacing:.4em}
 .reel-sec{padding-block:65px}
 .reel-sec__txt h2{font-size:36px}
 .film-controls{font-size:8px;letter-spacing:.06em;min-height:56px;gap:8px}
 .film-controls__actions{gap:9px}
 .film-expand{gap:8px}
 .tw-row{grid-template-columns:repeat(4,minmax(0,1fr))}
 .tw{aspect-ratio:.92}
 .destination__bottom{align-items:start;flex-direction:column;gap:20px}
 .destination__image{inset:29% -28% 14%}
 .destination__title h2{font-size:clamp(64px,18vw,90px)}
 .destination__title{margin-top:35px}
 .destination{min-height:610px}
 .destination__top .lbl{font-size:8px;letter-spacing:.12em}
 .destination__content{padding-block:30px}
 .wall__head h2{font-size:36px}
 .wall__it{aspect-ratio:1.18;min-height:134px}
 .wall--media .wall__it{min-height:134px}
 .wall__name{letter-spacing:.025em;bottom:13px}
 .wall__art,.wall--media .wall__art{width:min(86%,calc(var(--logo-ratio)*54px))}
 .hero__band{backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce){
 .lux-reveal.is-waiting{opacity:1;translate:none}
 .destination__image{transform:none;will-change:auto}
 .destination__halo{animation:none!important}
 .phead h1,.phead .lead{animation:none!important}
 .tk:hover,.tw:hover,.wall__it:hover{transform:none}
}
