@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .brand{display:none}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav{flex:1;justify-content:flex-start}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav a{font-size:1.32rem;font-weight:400!important}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav .utility-link{margin-left:auto}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav .language{margin-left:0;font-size:1.32rem}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .page-hero{background:linear-gradient(90deg,rgba(5,20,33,.8) 0%,rgba(5,20,33,.48) 48%,rgba(5,20,33,.2) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .publication-eyebrow{font-size:1.1rem;font-weight:400;letter-spacing:normal}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .publication-eyebrow .eyebrow-name{display:block;color:#ffe26f}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .publication-eyebrow .eyebrow-institution{display:block;color:var(--cyan)}
.page-hero{padding-top:3.75rem!important;padding-bottom:2rem!important}
@media(max-width:760px){:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav{flex:initial}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav a{font-size:1rem}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav .utility-link{margin-left:0}:is([data-page="publikacje"],[data-page="kursy"],[data-page="konferencje"],[data-page="projekty"],[data-page="popularyzacja"]) .site-header .main-nav .language{margin-left:0;font-size:1rem}.page-hero{padding-top:3rem!important;padding-bottom:1.5rem!important}}
[data-page="publikacje"] .record-list li{background:rgba(27,76,105,.88)!important}[data-page="kursy"] .record-list li{background:rgba(53,115,151,.82)!important}[data-page="konferencje"] .year-section .record-list{gap:0;border-left:2px solid rgba(78,227,232,.55);background:rgba(53,115,151,.82)}[data-page="konferencje"] .year-section .record-list li{border-left:0;background:transparent!important}[data-page="konferencje"] .year-section .record-list li+li{border-top:1px solid rgba(190,231,255,.26)}
.presentation-authors,.presentation-title,.publication-title{color:#ffe26f}.record-list a.presentation-title{color:#ffe26f;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}[data-page="konferencje"] .record-list a{font-size:inherit!important}
body[data-page="publikacje"]{--navy:#030d16}body[data-page="konferencje"]{--navy:#130d0a;--cyan:#e6b879}body[data-page="kursy"]{--navy:#061810;--cyan:#b8d98c}body[data-page="projekty"]{--navy:#120b1d;--cyan:#d2b5ef}body[data-page="popularyzacja"]{--navy:#121212;--cyan:#d9d1c4}[data-page="popularyzacja"] .page-hero{background:linear-gradient(90deg,rgba(3,3,3,.94) 0%,rgba(3,3,3,.7) 52%,rgba(3,3,3,.4) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}[data-page="popularyzacja"] .page-header{background:#121212}[data-page="popularyzacja"] .record-list li{background:rgba(44,44,44,.92)!important}[data-page="popularyzacja"] .site-footer{background:#0b0b0b}
.home-page-header .brand{display:none}.home-page-header .main-nav{flex:1;justify-content:flex-start}.home-page-header .main-nav a{font-size:1.32rem;font-weight:400!important}.home-page-header .main-nav .utility-link{margin-left:auto}.home-page-header .main-nav .language{margin-left:0;font-size:1.32rem}@media(max-width:760px){.home-page-header .main-nav{flex:initial}.home-page-header .main-nav a,.home-page-header .main-nav .language{font-size:1rem}.home-page-header .main-nav .utility-link{margin-left:0}}
.hero .publication-eyebrow{font-size:1.1rem;font-weight:400;letter-spacing:normal}.hero .publication-eyebrow .eyebrow-name{display:block;color:#ffe26f}.hero .publication-eyebrow .eyebrow-institution{display:block;color:var(--cyan)}
[data-page="publikacje"]{--navy:#030d16}[data-page="publikacje"] .page-hero{background:linear-gradient(90deg,rgba(2,10,17,.93) 0%,rgba(2,10,17,.68) 52%,rgba(2,10,17,.38) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}[data-page="publikacje"] .record-list li{background:rgba(11,37,53,.92)!important}[data-page="publikacje"] .page-header{background:#030d16}[data-page="publikacje"] .site-footer{background:#020910}
[data-page="konferencje"]{--navy:#130d0a;--cyan:#e6b879}[data-page="konferencje"] .page-hero{background:linear-gradient(90deg,rgba(25,15,9,.92) 0%,rgba(25,15,9,.68) 52%,rgba(25,15,9,.38) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}[data-page="konferencje"] .page-header{background:#130d0a}[data-page="konferencje"] .year-section .record-list{background:rgba(69,43,25,.88)}[data-page="konferencje"] .site-footer{background:#0d0907}
[data-page="kursy"]{--navy:#061810;--cyan:#b8d98c}[data-page="kursy"] .page-hero{background:linear-gradient(90deg,rgba(5,24,16,.92) 0%,rgba(5,24,16,.68) 52%,rgba(5,24,16,.38) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}[data-page="kursy"] .page-header{background:#061810}[data-page="kursy"] .record-list li{background:rgba(24,62,45,.88)!important}[data-page="kursy"] .site-footer{background:#04120c}[data-page="kursy"] .year-section .record-list{gap:0;border-left:2px solid rgba(184,217,140,.55);background:rgba(24,62,45,.88)}[data-page="kursy"] .year-section .record-list li{border-left:0;background:transparent!important}[data-page="kursy"] .year-section .record-list li+li{border-top:1px solid rgba(218,239,197,.24)}
[data-page="projekty"]{--navy:#120b1d;--cyan:#d2b5ef}[data-page="projekty"] .page-hero{background:linear-gradient(90deg,rgba(18,10,30,.92) 0%,rgba(18,10,30,.68) 52%,rgba(18,10,30,.38) 100%),url('assets/hero-terrain.webp') center 52%/cover no-repeat}[data-page="projekty"] .page-header{background:#120b1d}[data-page="projekty"] .record-list li{background:rgba(48,31,67,.88)!important}[data-page="projekty"] .site-footer{background:#0b0612}
:root{--ink:#e9f1f7;--muted:#aac2d8;--dim:#6f8aa3;--navy:#061524;--cyan:#4ee3e8;--line:rgba(146,202,230,.32);--content:min(1170px,calc(100% - 7rem))}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;min-width:320px;color:var(--ink);background:var(--navy);font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.6}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.content-width{width:var(--content);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;padding:.65rem 1rem;color:#03111e;background:var(--cyan);transform:translateY(-170%);transition:transform .2s}.skip-link:focus{transform:translateY(0)}
.site-header{position:absolute;z-index:10;inset:0 0 auto;display:flex;height:6.15rem;width:var(--content);margin-inline:auto;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(190,231,255,.26)}.brand{display:inline-flex;align-items:center;gap:1.4rem;color:#fff;text-decoration:none}.monogram{display:grid;position:relative;width:2.35rem;height:2.7rem;font-family:Manrope,sans-serif;font-size:2.15rem;line-height:1;letter-spacing:-.15em}.monogram span{position:absolute;bottom:0;left:.7rem;font-size:1.45rem}.brand-name{padding-left:1.4rem;border-left:1px solid var(--line);font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:500}.main-nav{display:flex;align-items:center;gap:1.75rem}.main-nav a{color:#e6eff7;text-decoration:none;font-size:.88rem;transition:color .2s}.main-nav a:hover,.main-nav a[aria-current="true"],.main-nav a[aria-current="page"]{color:var(--cyan)}.main-nav .language{padding-left:1.75rem;border-left:1px solid var(--line);font-weight:700}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;min-height:760px;overflow:hidden;background:#051421}.hero-art{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#051421 0%,rgba(5,20,33,.94) 28%,rgba(5,20,33,.42) 59%,rgba(5,20,33,.12) 100%),linear-gradient(0deg,#051421 0%,transparent 40%),url('assets/hero-terrain.webp') center/cover no-repeat}.hero-art:after{content:"";position:absolute;inset:0;opacity:.25;background-image:radial-gradient(rgba(61,218,235,.35) .55px,transparent .8px);background-size:7px 7px;mix-blend-mode:screen}.hero-content{padding-top:11.6rem}.eyebrow,.section-kicker{margin:0 0 1rem;color:var(--cyan);font-size:.71rem;font-weight:700;letter-spacing:.19em}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500}h1{max-width:720px;margin-bottom:1rem;color:#f8fbfe;font-size:clamp(2.7rem,5.5vw,5rem);letter-spacing:-.055em;line-height:1.05}.hero-topics{margin-bottom:1.5rem;color:#bdd6e9;font-size:clamp(1.06rem,1.8vw,1.35rem)}.hero-topics span{color:var(--cyan)}.hero-copy{max-width:33rem;margin-bottom:2rem;color:#c5d9ea;font-size:1.05rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem}.button{display:inline-flex;align-items:center;gap:.7rem;min-height:3.2rem;padding:.75rem 1.25rem;border:1px solid var(--cyan);border-radius:.12rem;text-decoration:none;font-weight:600}.button span,.text-link span{font-size:1.2em;transition:transform .2s}.button:hover span,.text-link:hover span{transform:translateX(.25rem)}.button-filled{color:#03131e;background:var(--cyan)}.button-outline{color:var(--cyan)}.profile-links{display:flex;flex-wrap:wrap;gap:1.8rem;width:min(100%,30rem);margin:4rem 0 0;padding:1rem 0 0;border-top:1px solid var(--line);list-style:none}.profile-links a{color:#b9d8eb;font-size:.86rem;text-decoration:none}.profile-links a:hover,.profile-links span{color:var(--cyan)}
.section{padding:7.25rem 0}.research{background:linear-gradient(180deg,#061524,#061a2b)}h2{margin-bottom:2.75rem;color:#f3f8fb;font-size:clamp(2.35rem,4.5vw,4.15rem);letter-spacing:-.06em;line-height:1.08}.research-grid{display:grid;grid-template-columns:repeat(3,1fr)}.research-card{min-height:18rem;padding:0 2.5rem;border-left:1px solid var(--line)}.research-card:first-child{padding-left:0;border-left:0}.research-card:last-child{padding-right:0}.research-icon{width:4.1rem;height:3.4rem;margin-bottom:1.2rem;fill:none;stroke:var(--cyan);stroke-width:1.5}.research-card h3,.teaching-grid h3{margin-bottom:.85rem;font-size:1.25rem;letter-spacing:-.04em}.research-card p{max-width:18rem;color:var(--muted)}.publications{background:#0a2840}.split-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}.split-heading h2{margin-bottom:.75rem}.section-intro{max-width:40rem;color:var(--muted)}.text-link{display:inline-flex;flex-shrink:0;align-items:center;gap:.55rem;color:var(--cyan);font-weight:600;text-decoration:none}.publication-list{display:grid;gap:0;margin-top:3rem;border-top:1px solid var(--line)}.publication-list article{display:grid;grid-template-columns:9rem 1fr;gap:2rem;padding:1.55rem 0;border-bottom:1px solid var(--line)}.publication-list h3{max-width:55rem;margin-bottom:.25rem;font-size:1.05rem;letter-spacing:-.025em}.publication-list p{margin-bottom:.45rem;color:var(--muted)}.publication-list .year{color:var(--cyan);font-weight:700}.publication-list a{color:#d3ecff;font-size:.86rem}.teaching{background:#061b2d}.teaching-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3rem}.teaching-grid article{min-height:14.5rem;padding:1.7rem;border:1px solid var(--line);background:rgba(5,20,33,.32)}.card-number{color:var(--cyan);font-size:.8rem;font-weight:700;letter-spacing:.14em}.teaching-grid p:last-child{margin:0;color:var(--muted)}.about{background:radial-gradient(circle at 80% 20%,rgba(27,104,139,.25),transparent 32%),#092640}.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,9vw,10rem)}.about h2{margin-bottom:0}.about-copy{max-width:39rem;padding-left:2rem;border-left:1px solid var(--line);color:#c5d9ea;font-size:1.06rem}.about-copy .text-link{margin-top:.8rem}
.site-footer{position:relative;overflow:hidden;padding:5.5rem 0 2.2rem;background:#04111d}.footer-contours{position:absolute;inset:0 0 0 47%;opacity:.38;background:repeating-radial-gradient(ellipse 70% 45% at 70% 100%,transparent 0 16px,#1db8d5 17px 18px,transparent 19px 33px);transform:rotate(-9deg) scale(1.2)}.footer-content{position:relative}.site-footer h2{margin-bottom:.5rem;font-size:clamp(2.15rem,4vw,3.4rem)}.email{color:var(--cyan);font-family:Manrope,sans-serif;font-size:clamp(1.18rem,2.3vw,1.7rem);font-weight:500}address{margin-top:2.6rem;color:var(--muted);font-style:normal}.footer-bottom{display:flex;justify-content:space-between;gap:1.5rem;margin-top:4rem;padding-top:1.2rem;border-top:1px solid var(--line);color:var(--dim);font-size:.8rem}.footer-bottom a{color:var(--muted)}
@media(max-width:760px){:root{--content:min(100% - 2.5rem,1170px)}.site-header{height:4.65rem}.brand{gap:.75rem}.monogram{width:2rem;height:2.25rem;font-size:1.8rem}.brand-name{padding-left:.75rem;font-size:.95rem}.menu-toggle{display:grid;z-index:2;gap:.35rem;width:2.75rem;height:2.75rem;place-content:center;border:1px solid var(--line);color:var(--ink);background:transparent}.menu-toggle span:not(.sr-only){display:block;width:1.1rem;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:nth-of-type(2){transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-of-type(3){transform:translateY(-3px) rotate(-45deg)}.main-nav{position:absolute;top:4.65rem;right:0;left:0;display:grid;gap:0;max-height:0;overflow:hidden;opacity:0;background:rgba(4,17,29,.98);transition:max-height .28s ease,opacity .2s}.main-nav.open{max-height:30rem;opacity:1;border-bottom:1px solid var(--line)}.main-nav a{padding:.9rem 1.25rem;border-bottom:1px solid rgba(146,202,230,.15);font-size:1rem}.main-nav .language{padding-left:1.25rem;border-left:0}.hero{min-height:710px}.hero-art{background-position:60% center}.hero-content{padding-top:8.7rem}h1{font-size:clamp(2.55rem,12vw,4rem)}.hero-topics{font-size:1rem}.profile-links{gap:.75rem 1.2rem;margin-top:3rem}.section{padding:4.4rem 0}h2{margin-bottom:2rem}.research-grid,.teaching-grid,.about-grid{grid-template-columns:1fr}.research-card,.research-card:first-child,.research-card:last-child{min-height:0;padding:1.65rem 0;border-top:1px solid var(--line);border-left:0}.research-card:last-child{border-bottom:1px solid var(--line)}.research-icon{margin-bottom:.75rem}.split-heading{display:block}.split-heading .text-link{margin-top:.7rem}.publication-list{margin-top:2.2rem}.publication-list article{grid-template-columns:1fr;gap:.25rem}.publication-list .year{margin-bottom:.25rem}.teaching-grid{margin-top:2.1rem}.teaching-grid article{min-height:0}.about-copy{padding:1.6rem 0 0;border-top:1px solid var(--line);border-left:0}.site-footer{padding-top:4rem}.footer-contours{left:25%;opacity:.18}.footer-bottom{align-items:start;flex-direction:column;gap:.6rem;margin-top:3rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
.page-header{position:relative;background:#061524}.page-hero{padding:7.5rem 0 4rem;background:radial-gradient(circle at 85% 0%,rgba(42,169,190,.25),transparent 35%),#092640}.page-hero h1{margin-bottom:.7rem;font-size:clamp(2.6rem,5vw,4.8rem)}.page-hero p:last-child{max-width:48rem;color:var(--muted);font-size:1.1rem}.records{padding:4.5rem 0 6.5rem}.record-section{padding:0 0 2rem}.record-section h2{padding-bottom:1rem;margin-bottom:1.25rem;border-bottom:1px solid var(--line);font-size:clamp(1.7rem,3vw,2.5rem)}.record-list{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}.record-list:empty{display:none}.record-list li{padding:1rem 1.2rem;border-left:2px solid rgba(78,227,232,.55);background:rgba(35,84,117,.72);color:#d6e5ef}.record-list a{color:var(--cyan);white-space:nowrap;font-size:.88em}.year-section{padding-bottom:2.2rem}.year-section h2{margin-bottom:.85rem;padding-bottom:.55rem;color:var(--cyan);font-size:clamp(1.15rem,1.9vw,1.45rem);letter-spacing:.02em}.category-section{margin-top:6rem;padding-bottom:3rem}.category-section:first-child{margin-top:0}.compact-footer{padding:2.5rem 0}.compact-footer .footer-bottom{margin-top:1.6rem}@media(max-width:760px){.page-hero{padding:5.8rem 0 3rem}.records{padding:3.2rem 0 4rem}.record-list li{padding:1rem}.record-list a{white-space:normal}.category-section{margin-top:4rem}}




/* Teaching section */
[data-page="kursy"] .teaching-section {
  margin-top: 5rem;
}
[data-page="kursy"] .teaching-groups {
  background: transparent;
}
[data-page="kursy"] .teaching-group {
  margin: 2.25rem 0;
}
[data-page="kursy"] .teaching-group h3,
[data-page="kursy"] .teaching-note {
  margin: 0 0 .8rem;
  color: var(--cyan);
  font-size: clamp(1.1rem, 1.7vw, 1.35rem);
  font-weight: 400;
}
[data-page="kursy"] .teaching-group .record-list {
  gap: 0;
  border-left: 2px solid rgba(184,217,140,.55);
  background: rgba(24,62,45,.88);
}
[data-page="kursy"] .teaching-group .record-list li {
  padding: .75rem 1.2rem;
  border-left: 0;
  background: transparent !important;
}
[data-page="kursy"] .teaching-group .record-list li + li {
  border-top: 1px solid rgba(218,239,197,.24);
}
[data-page="kursy"] .teaching-note {
  margin: 2.5rem 0 0;
}


/* Compact homepage hero title */
.hero-title--compact {
  max-width: 920px;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  font-size: clamp(1.35rem, 2.75vw, 2.5rem);
}


/* Publication typography scale */
[data-page="publikacje"] .page-hero h1 {
  font-size: clamp(1.35rem, 2.75vw, 2.5rem);
}
[data-page="publikacje"] .category-section h2 {
  font-size: clamp(1.25rem, 2.2vw, 2rem);
}


/* Consistent subpage typography scale */
:is([data-page="konferencje"],[data-page="kursy"],[data-page="projekty"],[data-page="popularyzacja"]) .page-hero h1 {
  font-size: clamp(1.35rem, 2.75vw, 2.5rem);
}
:is([data-page="konferencje"],[data-page="kursy"]) .category-section h2,
[data-page="kursy"] .teaching-section > h2,
[data-page="projekty"] .record-section h2,
[data-page="popularyzacja"] .category-section h2 {
  font-size: clamp(1.25rem, 2.2vw, 2rem);
}

/* Sticky navigation on all subpages; the homepage remains unchanged. */
body:not(.home-page) .site-header.page-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--navy);
}


/* Full-width navigation bar with links aligned to the content grid. */
:is([data-page="publikacje"], [data-page="konferencje"], [data-page="kursy"], [data-page="projekty"], [data-page="popularyzacja"]) .site-header.page-header {
  width: 100%;
  padding-inline: calc((100% - var(--content)) / 2);
}
/* Accessibility page: shared layout with a light sand palette */
body[data-page="deklaracja"] {
  --navy: #d2c7b3;
  --cyan: #5f4b2e;
  --ink: #28251f;
  --muted: #453f34;
  --dim: #554e42;
  --line: rgba(67, 54, 35, .36);
  color: var(--ink);
  background: #d2c7b3;
}
[data-page="deklaracja"] .site-header.page-header {
  background: #c2b69f;
  border-bottom-color: var(--line);
}
[data-page="deklaracja"] .site-header .brand,
[data-page="deklaracja"] .site-header .main-nav a {
  color: #28251f;
}
[data-page="deklaracja"] .site-header .main-nav a:hover,
[data-page="deklaracja"] .site-header .main-nav a[aria-current="page"] {
  color: var(--cyan);
}
[data-page="deklaracja"] .site-header .brand {
  display: none;
}
[data-page="deklaracja"] .site-header .main-nav {
  flex: 1;
  justify-content: flex-start;
}
[data-page="deklaracja"] .site-header .main-nav a {
  font-size: 1.32rem;
  font-weight: 400;
}
[data-page="deklaracja"] .site-header .main-nav .utility-link {
  margin-left: auto;
}
[data-page="deklaracja"] .site-header .main-nav .language {
  margin-left: 0;
  border-left-color: var(--line);
  font-size: 1.32rem;
}
[data-page="deklaracja"] .page-hero {
  background: linear-gradient(110deg, #c2b69f 0%, #b6a98f 100%);
  border-bottom: 1px solid var(--line);
}
[data-page="deklaracja"] .page-hero h1 {
  color: #28251f;
  font-size: clamp(1.35rem, 2.75vw, 2.5rem);
}
[data-page="deklaracja"] .page-hero p:last-child {
  color: #453f34;
}
[data-page="deklaracja"] .publication-eyebrow {
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: normal;
}
[data-page="deklaracja"] .publication-eyebrow .eyebrow-name,
[data-page="deklaracja"] .publication-eyebrow .eyebrow-institution {
  display: block;
}[data-page="deklaracja"] .publication-eyebrow .eyebrow-name {
  color: #5f4b2e;
}
[data-page="deklaracja"] .publication-eyebrow .eyebrow-institution {
  color: #453f34;
}
[data-page="deklaracja"] .record-section h2 {
  color: #28251f;
  font-size: clamp(1.25rem, 2.2vw, 2rem);
}
[data-page="deklaracja"] .record-list li {
  border-left-color: #756044;
  background: #c8bca5;
  color: #28251f;
}
[data-page="deklaracja"] .record-list a,
[data-page="deklaracja"] .compact-footer a {
  color: #544024;
}
[data-page="deklaracja"] .compact-footer {
  background: #bfb297;
  border-top: 1px solid var(--line);
}
[data-page="deklaracja"] .compact-footer .footer-bottom {
  color: #453f34;
  border-top-color: var(--line);
}
@media (max-width: 760px) {
  [data-page="deklaracja"] .site-header .main-nav {
    flex: initial;
  }
  [data-page="deklaracja"] .site-header .main-nav a,
  [data-page="deklaracja"] .site-header .main-nav .language {
    font-size: 1rem;
  }
  [data-page="deklaracja"] .site-header .main-nav .utility-link {
    margin-left: 0;
  }
  [data-page="deklaracja"] .site-header .main-nav {
    background: rgba(194, 182, 159, .99);
  }
  [data-page="deklaracja"] .menu-toggle {
    color: #28251f;
  }
}


/* Accessibility page: deeper sand, orange accents, grouped declaration panels */
body[data-page="deklaracja"] {
  --navy: #514637;
  --cyan: #e6a05b;
  --ink: #f3e9d9;
  --muted: #e2d4be;
  --dim: #d0bea2;
  --line: rgba(230, 201, 158, .36);
  background: #514637;
}
body[data-page="deklaracja"] .site-header.page-header {
  width: 100%;
  padding-inline: calc((100% - var(--content)) / 2);
  background: #514637;
  border-bottom-color: rgba(58, 43, 25, .4);
}
[data-page="deklaracja"] .site-header .main-nav a {
  color: #f3e9d9;
}
[data-page="deklaracja"] .site-header .main-nav a:hover,
[data-page="deklaracja"] .site-header .main-nav a[aria-current="page"] {
  color: #7c390f;
}
[data-page="deklaracja"] .site-header .main-nav .language {
  border-left-color: rgba(230, 201, 158, .36);
}
[data-page="deklaracja"] .page-hero {
  background: linear-gradient(90deg, rgba(56, 43, 30, .94) 0%, rgba(56, 43, 30, .76) 52%, rgba(56, 43, 30, .48) 100%), url('assets/hero-terrain.webp') center 52%/cover no-repeat;
  border-bottom-color: rgba(230, 201, 158, .36);
}
[data-page="deklaracja"] .page-hero h1 {
  color: #fff8ed;
  letter-spacing: normal;
  word-spacing: .12em;
}
[data-page="deklaracja"] .page-hero p:last-child {
  color: #eee2cf;
}
[data-page="deklaracja"] .publication-eyebrow .eyebrow-name {
  color: #ffe26f;
}
[data-page="deklaracja"] .publication-eyebrow .eyebrow-institution {
  color: #f0c392;
}
[data-page="deklaracja"] .records > .record-section {
  margin: 0 0 2.5rem;
  padding: 0 0 1rem;
  border: 0;
  background: transparent;
  box-shadow: none;
}
[data-page="deklaracja"] .records > .record-section h2 {
  margin: 0 0 1rem;
  padding: 0 0 .75rem;
  border-bottom: 1px solid rgba(230, 201, 158, .36);
  color: #f4bd82;
}
[data-page="deklaracja"] .records > .record-section .record-list {
  gap: 0;
  border-left: 2px solid #b75b21;
  background: #a59173;
  box-shadow: 0 8px 22px rgba(55, 42, 25, .12);
}
[data-page="deklaracja"] .records > .record-section .record-list li {
  padding: .85rem 1rem;
  border: 0;
  background: transparent !important;
  color: #29251f;
}
[data-page="deklaracja"] .records > .record-section .record-list li + li {
  border-top: 1px solid rgba(76, 59, 37, .24);
}
[data-page="deklaracja"] .records > .record-section .record-list a,
[data-page="deklaracja"] .compact-footer a {
  color: #3c1e0c;
}
[data-page="deklaracja"] .compact-footer {
  background: #3d3429;
  border-top-color: rgba(230, 201, 158, .36);
}
[data-page="deklaracja"] .compact-footer .footer-bottom {
  color: #e2d4be;
  border-top-color: rgba(230, 201, 158, .36);
}
[data-page="deklaracja"] .compact-footer a {
  color: #f0c392;
}
@media (max-width: 760px) {
  [data-page="deklaracja"] .site-header .main-nav {
    background: rgba(81, 70, 55, .99);
  }
  [data-page="deklaracja"] .menu-toggle {
    color: #f3e9d9;
  }
  [data-page="deklaracja"] .records > .record-section {
    padding: 0 0 1rem;
  }
  [data-page="deklaracja"] .records > .record-section .record-list li {
    padding: .8rem .75rem;
  }
}






/* Keep the compliance statement and its four reasons together. */
[data-page="deklaracja"] .records > .record-section:first-child .record-list li:nth-child(n+5):nth-child(-n+8) {
  border-top: 0;
  padding-top: .2rem;
}
[data-page="deklaracja"] .records > .record-section:first-child .record-list li:nth-child(n+4):nth-child(-n+7) {
  padding-bottom: .2rem;
}

/* Yellow active and interactive navigation on the accessibility page. */
[data-page="deklaracja"] .site-header .main-nav .utility-link,
[data-page="deklaracja"] .site-header .main-nav a:hover,
[data-page="deklaracja"] .site-header .main-nav a:focus-visible,
[data-page="deklaracja"] .site-header .main-nav a[aria-current="page"] {
  color: #ffe26f;
  text-shadow: 0 1px 2px rgba(39, 28, 18, .85);
}

/* More open section headings on the accessibility page. */
[data-page="deklaracja"] .records > .record-section h2 {
  letter-spacing: .035em;
  word-spacing: .12em;
}

/* Open spacing in content headings on the four requested pages. */
:is([data-page="popularyzacja"], [data-page="kursy"], [data-page="konferencje"], [data-page="publikacje"]) .record-section h2,
[data-page="kursy"] .teaching-group h3 {
  letter-spacing: .035em;
  word-spacing: .12em;
}

/* Match project dates and titles to their left accent line. */
[data-page="projekty"] .record-list li {
  border-left: 2px solid var(--cyan);
}
[data-page="projekty"] .project-years {
  color: #ffe26f;
  font-weight: 600;
}
[data-page="projekty"] .project-title {
  color: #4ee3e8;
  font-weight: 400;
}
[data-page="projekty"] .project-role {
  font-weight: 700;
  text-decoration: none;
}

/* Match conference block accents to the year headings. */
[data-page="konferencje"] .year-section .record-list {
  border-left-color: var(--cyan);
}

/* Readable neutral accents for the outreach page. */
[data-page="popularyzacja"] {
  --outreach-text-gray: #a8a8a8;
}
[data-page="popularyzacja"] .publication-eyebrow .eyebrow-institution {
  color: var(--outreach-text-gray);
}
[data-page="popularyzacja"] .site-header .main-nav a[aria-current="page"],
[data-page="popularyzacja"] .site-header .main-nav a:hover,
[data-page="popularyzacja"] .site-header .main-nav a:focus-visible {
  color: #ffe26f;
}
[data-page="popularyzacja"] .year-section h2 {
  color: #ffe26f;
}

/* Group the GIS Day co-organization history into one block. */
[data-page="popularyzacja"] .outreach-combined-year .record-list {
  gap: 0;
  border-left: 2px solid rgba(78, 227, 232, .55);
  background: rgba(44, 44, 44, .92);
}
[data-page="popularyzacja"] .outreach-combined-year .record-list li {
  border-left: 0;
  background: transparent !important;
}
[data-page="popularyzacja"] .outreach-combined-year .record-list li + li {
  border-top: 1px solid rgba(217, 209, 196, .2);
}

/* Digital atlas: accepted Publications2 design, scoped to the six live subpages.
   Keep the comparison page and homepage independent. Grouped lists retain
   their existing structure; only their shared outer panel receives a surface. */
body[data-page]:not(.publications-preview) {
  --atlas-rgb: 120, 217, 221;
  --atlas-hero: 7, 21, 30;
  --atlas-panel-start: #142d3a;
  --atlas-panel-end: #0d202d;
  --atlas-text: #cbdce5;
  --atlas-grid: 72px;
  --atlas-contours: 700px 1100px;
  --atlas-position: right top;
  isolation: isolate;
}
body[data-page="publikacje"]:not(.publications-preview) {
  --navy: #07151e;
  --cyan: #78d9dd;
}
body[data-page="konferencje"]:not(.publications-preview) {
  --atlas-rgb: 230, 184, 121;
  --atlas-hero: 25, 15, 9;
  --atlas-panel-start: #402b1d;
  --atlas-panel-end: #2d1f16;
  --atlas-contours: 770px 1210px;
}
body[data-page="kursy"]:not(.publications-preview) {
  --atlas-rgb: 184, 217, 140;
  --atlas-hero: 5, 24, 16;
  --atlas-panel-start: #173b2b;
  --atlas-panel-end: #102c21;
  --atlas-grid: 64px;
  --atlas-position: right 180px;
}
body[data-page="projekty"]:not(.publications-preview) {
  --atlas-rgb: 210, 181, 239;
  --atlas-hero: 18, 10, 30;
  --atlas-panel-start: #302143;
  --atlas-panel-end: #23182f;
  --atlas-contours: 840px 1320px;
}
body[data-page="popularyzacja"]:not(.publications-preview) {
  --atlas-rgb: 180, 180, 180;
  --atlas-hero: 10, 10, 10;
  --atlas-panel-start: #2c2c2c;
  --atlas-panel-end: #232323;
  --atlas-grid: 84px;
}
body[data-page="deklaracja"]:not(.publications-preview) {
  --atlas-rgb: 240, 195, 146;
  --atlas-hero: 56, 43, 30;
  --atlas-panel-start: #ad997b;
  --atlas-panel-end: #a59173;
  --atlas-text: #29251f;
  --atlas-grid: 84px;
  --atlas-contours: 840px 1320px;
}
body[data-page]:not(.publications-preview) main {
  position: relative;
  isolation: isolate;
  background: radial-gradient(ellipse at 100% 18%, rgba(var(--atlas-rgb), .035), transparent 45%);
}
body[data-page]:not(.publications-preview) main::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: rgb(var(--atlas-rgb));
  mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MDAiIGhlaWdodD0iMTEwMCIgdmlld0JveD0iMCAwIDcwMCAxMTAwIj4KICA8ZyBmaWxsPSJub25lIiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjEiPgogICAgPHBhdGggZD0iTTc0MCA1MEM0MTAtODAgNTgwIDI2MCAyNzAgMzAwUzE4MCA2MjAgNDcwIDY5MCAzMTAgMTA0MCA0MCAxMTAwIi8+CiAgICA8cGF0aCBkPSJNNzQwIDc1QzQzMC00MCA2MDAgMjgwIDI5NSAzMjVTMjIwIDYwMCA0OTAgNzE1IDM0MCAxMDUwIDkwIDExMjAiLz4KICAgIDxwYXRoIGQ9Ik03NDAgMTAwQzQ1MCAwIDYyMCAzMDAgMzIwIDM1MFMyNjAgNTgwIDUxMCA3NDAgMzcwIDEwNjAgMTQwIDExNDAiLz4KICAgIDxwYXRoIGQ9Ik03NDAgMTI1QzQ3MCA0MCA2NDAgMzIwIDM0NSAzNzVTMzAwIDU2MCA1MzAgNzY1IDQwMCAxMDcwIDE5MCAxMTYwIi8+CiAgICA8cGF0aCBkPSJNNzQwIDE1MEM0OTAgODAgNjYwIDM0MCAzNzAgNDAwUzM0MCA1NDAgNTUwIDc5MCA0MzAgMTA4MCAyNDAgMTE4MCIvPgogICAgPHBhdGggZD0iTTc0MCAxNzVDNTEwIDEyMCA2ODAgMzYwIDM5NSA0MjVTMzgwIDUyMCA1NzAgODE1IDQ2MCAxMDkwIDI5MCAxMjAwIi8+CiAgICA8cGF0aCBkPSJNNzQwIDIwMEM1MzAgMTYwIDcwMCAzODAgNDIwIDQ1MFM0MjAgNTAwIDU5MCA4NDAgNDkwIDExMDAgMzQwIDEyMjAiLz4KICAgIDxwYXRoIGQ9Ik03NDAgMjI1QzU1MCAyMDAgNzIwIDQwMCA0NDUgNDc1UzQ2MCA0ODAgNjEwIDg2NSA1MjAgMTExMCAzOTAgMTI0MCIvPgogICAgPHBhdGggZD0iTTc0MCAyNTBDNTcwIDI0MCA3NDAgNDIwIDQ3MCA1MDBTNTAwIDQ2MCA2MzAgODkwIDU1MCAxMTIwIDQ0MCAxMjYwIi8+CiAgPC9nPgogIDxnIGZpbGw9IndoaXRlIj48Y2lyY2xlIGN4PSIzMjAiIGN5PSIzNTAiIHI9IjMiLz48Y2lyY2xlIGN4PSI1MzAiIGN5PSI3NjUiIHI9IjMiLz48L2c+Cjwvc3ZnPgoNCg==") var(--atlas-position) / var(--atlas-contours) repeat-y;
  opacity: .22;
}
body[data-page]:not(.publications-preview) .site-header.page-header {
  background: var(--navy);
  border-bottom: 1px solid rgba(var(--atlas-rgb), .18);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
body[data-page]:not(.publications-preview) .main-nav a {
  text-underline-offset: .55em;
  text-decoration-thickness: 1px;
}
body[data-page]:not(.publications-preview) .main-nav a[aria-current="page"] {
  text-decoration: underline;
}
body[data-page]:not(.publications-preview) .page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(var(--atlas-hero), .97), rgba(var(--atlas-hero), .75) 48%, rgba(var(--atlas-hero), .24)),
    url("assets/hero-terrain.webp") center 52% / cover no-repeat;
  border-bottom: 1px solid rgba(var(--atlas-rgb), .18);
}
body[data-page]:not(.publications-preview) .page-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(var(--atlas-rgb), .12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--atlas-rgb), .12) 1px, transparent 1px);
  background-size: var(--atlas-grid) var(--atlas-grid);
  mask-image: linear-gradient(90deg, transparent 42%, #000);
}
body[data-page]:not(.publications-preview) .page-hero h1 {
  letter-spacing: -.02em;
  margin-top: 1.7rem;
  margin-bottom: .8rem;
}
body[data-page="deklaracja"]:not(.publications-preview) .page-hero h1 { letter-spacing: normal; }
body[data-page]:not(.publications-preview) .records { padding-top: 3.5rem; }
body[data-page]:not(.publications-preview) .record-section:not(.year-section) > h2,
body[data-page]:not(.publications-preview) .teaching-group > h3 {
  position: relative;
  letter-spacing: .035em;
  word-spacing: .12em;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(var(--atlas-rgb), .21);
}
body[data-page]:not(.publications-preview) .record-section:not(.year-section) > h2::after,
body[data-page]:not(.publications-preview) .teaching-group > h3::after {
  content: "";
  position: absolute;
  width: 3rem;
  height: 2px;
  bottom: -1px;
  left: 0;
  background: rgb(var(--atlas-rgb));
}
body[data-page]:not(.publications-preview) .year-section h2 {
  display: flex;
  align-items: center;
  gap: 1rem;
  border: 0;
  font-variant-numeric: tabular-nums;
}
/* Use the same year accent in both English conference categories. */
body[data-content="conferences"] .year-section h2 {
  color: var(--cyan);
}
body[data-page]:not(.publications-preview) .year-section h2::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, rgba(var(--atlas-rgb), .26), transparent);
}
body[data-page]:not(.publications-preview) .record-list { gap: .75rem; }
body[data-page]:not(.publications-preview) .record-list > li {
  padding: 1.15rem 1.4rem;
  background: linear-gradient(110deg, var(--atlas-panel-start), var(--atlas-panel-end)) !important;
  border: 1px solid rgba(var(--atlas-rgb), .12);
  border-left: 2px solid rgba(var(--atlas-rgb), .52);
  border-radius: 0 5px 5px 0;
  color: var(--atlas-text);
  box-shadow: 0 5px 18px rgba(0, 0, 0, .08);
  line-height: 1.8;
}
body[data-page]:not(.publications-preview) .record-list a {
  text-underline-offset: .2em;
  overflow-wrap: anywhere;
  white-space: normal;
}
/* The established year/teaching/declaration blocks stay connected. */
body:is([data-page="konferencje"], [data-page="kursy"], [data-page="popularyzacja"]) .year-section .record-list,
body[data-page="kursy"]:not(.publications-preview) .teaching-group .record-list,
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list {
  gap: 0;
  background: linear-gradient(110deg, var(--atlas-panel-start), var(--atlas-panel-end));
  border: 1px solid rgba(var(--atlas-rgb), .12);
  border-left: 2px solid rgb(var(--atlas-rgb));
  border-radius: 0 5px 5px 0;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .08);
}
body:is([data-page="konferencje"], [data-page="kursy"], [data-page="popularyzacja"]) .year-section .record-list > li,
body[data-page="kursy"]:not(.publications-preview) .teaching-group .record-list > li,
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list > li {
  background: transparent !important;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
body:is([data-page="konferencje"], [data-page="kursy"], [data-page="popularyzacja"]) .year-section .record-list > li + li,
body[data-page="kursy"]:not(.publications-preview) .teaching-group .record-list > li + li {
  border-top: 1px solid rgba(var(--atlas-rgb), .16);
}
body[data-page="projekty"]:not(.publications-preview) .record-list > li { border-left-color: var(--cyan); }
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list {
  border-left-color: #b75b21;
}
/* Retain the declaration's connected compliance paragraph and its separators. */
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list > li {
  padding: .85rem 1rem;
}
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list > li + li {
  border-top: 1px solid rgba(76, 59, 37, .24);
}
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section:first-child .record-list > li:nth-child(n+5):nth-child(-n+8) {
  border-top: 0;
  padding-top: .2rem;
}
body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section:first-child .record-list > li:nth-child(n+4):nth-child(-n+7) {
  padding-bottom: .2rem;
}
body[data-page]:not(.publications-preview) .compact-footer {
  border-top: 1px solid rgba(var(--atlas-rgb), .15);
}
body[data-page]:not(.publications-preview) .compact-footer .footer-bottom {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}
body[data-page]:not(.publications-preview) .skip-link { z-index: 101; }
@media (max-width: 1100px) {
  body[data-page]:not(.publications-preview) .site-header { height: 4.65rem; }
  body[data-page]:not(.publications-preview) .menu-toggle {
    display: grid;
    z-index: 2;
    gap: .35rem;
    width: 2.75rem;
    height: 2.75rem;
    place-content: center;
    border: 1px solid var(--line);
    color: var(--ink);
    background: transparent;
  }
  body[data-page]:not(.publications-preview) .menu-toggle span:not(.sr-only) {
    display: block;
    width: 1.1rem;
    height: 1px;
    background: currentColor;
  }
  body[data-page]:not(.publications-preview) .site-header .main-nav {
    position: absolute;
    top: 4.65rem;
    right: 0;
    left: 0;
    display: grid;
    justify-content: stretch;
    gap: 0;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    background: var(--navy);
    transition: max-height .28s ease, opacity .2s ease;
  }
  body[data-page]:not(.publications-preview) .site-header .main-nav.open {
    max-height: min(30rem, calc(100dvh - 4.65rem));
    opacity: 1;
    overflow-y: auto;
    visibility: visible;
    border-bottom: 1px solid var(--line);
  }
  body[data-page]:not(.publications-preview) .site-header .main-nav a {
    padding: .8rem max(1.25rem, calc((100% - var(--content)) / 2));
    border-bottom: 1px solid var(--line);
    font-size: 1rem;
  }
  body[data-page]:not(.publications-preview) .site-header .main-nav .utility-link,
  body[data-page]:not(.publications-preview) .site-header .main-nav .language {
    margin-left: 0;
    border-left: 0;
  }
}
@media (max-width: 760px) {
  body[data-page]:not(.publications-preview) main::before { opacity: .14; }
  body[data-page]:not(.publications-preview) .page-hero::after { background-size: 48px 48px; }
  body[data-page]:not(.publications-preview) .records { padding-top: 2.75rem; }
  body[data-page]:not(.publications-preview) .record-list > li { padding: 1rem; }
  body[data-page="deklaracja"]:not(.publications-preview) .records > .record-section .record-list > li { padding: .8rem .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-page]:not(.publications-preview) .site-header .main-nav { transition: none; }
}

/* Homepage biography: portrait beside the expanded introduction. */
.about-portrait { min-width: 0; }
.about-photo {
  display: block;
  width: min(120%, 516px);
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center 38%;
  border: 1px solid var(--line);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .24);
}
.about-portrait h2,
.about-copy h2 {
  margin-bottom: 1.35rem;
  font-size: clamp(1.8rem, 3.2vw, 2.5rem);
  letter-spacing: -.035em;
  line-height: 1.16;
}
.about-caption {
  margin: .8rem 0 0;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
}
.about-copy a:not(.text-link) { color: var(--cyan); text-underline-offset: .18em; }
@media (max-width: 760px) {
  .about-photo { width: 100%; }
  .about-portrait h2,
  .about-copy h2 { margin-bottom: 1rem; }
}

/* One continuous terrain-contour backdrop for the homepage content sections. */
.home-contour-flow {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.home-contour-flow::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  background: url("assets/atlas-contours.svg") right top / min(70vw, 900px) 1100px repeat-y;
  opacity: .18;
}
.home-contour-flow > section > .content-width {
  position: relative;
  z-index: 1;
}
@media (max-width: 760px) {
  .home-contour-flow::before { opacity: .12; }
}

/* Homepage hero refinements requested for the tagline and profile links. */
.hero-title--compact { letter-spacing: .015em; }
.profile-links a {
  color: #fff;
  font-size: 1.204rem;
}
.profile-links a:hover,
.profile-links a:hover span,
.profile-links a:focus-visible,
.profile-links a:focus-visible span,
.home-page-header .main-nav a:hover,
.home-page-header .main-nav a:focus-visible {
  color: #ffe26f;
}
.home-page-header .main-nav a[aria-current="page"] {
  color: #ffe26f;
}
.profile-links a {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
}
.profile-links {
  flex-wrap: nowrap;
  width: min(100%, 50rem);
  column-gap: 1rem;
  row-gap: 0;
}
.profile-links a { white-space: nowrap; }
/* Match the subpage tablet menu without changing the desktop layout. */
@media (min-width: 761px) and (max-width: 1100px) {
  .home-page-header { height: 4.65rem; }
  .home-page-header .menu-toggle {
    display: grid; z-index: 2; gap: .35rem; width: 2.75rem; height: 2.75rem;
    place-content: center; border: 1px solid var(--line); color: var(--ink); background: transparent;
  }
  .home-page-header .menu-toggle span:not(.sr-only) {
    display: block; width: 1.1rem; height: 1px; background: currentColor;
  }
  .home-page-header .main-nav {
    position: absolute; top: 4.65rem; right: 0; left: 0; display: grid;
    justify-content: stretch; gap: 0; max-height: 0; overflow: hidden;
    opacity: 0; visibility: hidden; background: var(--navy);
  }
  .home-page-header .main-nav.open {
    max-height: min(30rem, calc(100dvh - 4.65rem)); overflow-y: auto;
    opacity: 1; visibility: visible; border-bottom: 1px solid var(--line);
  }
  .home-page-header .main-nav a { padding: .8rem 1.25rem; font-size: 1rem; border-bottom: 1px solid var(--line); }
  .home-page-header .main-nav .utility-link,
  .home-page-header .main-nav .language { margin-left: 0; border-left: 0; font-size: 1rem; }
  .profile-links { flex-wrap: wrap; row-gap: .65rem; }
}
.profile-icon {
  flex: 0 0 auto;
  width: 1.15em;
  height: 1.15em;
}
.about-portrait h2 {
  position: relative;
  top: -1em;
}
@media (min-width: 761px) {
  .about-copy { position: relative; top: -1em; }
}
.about-subtitle {
  display: block;
  margin-top: 1.68em;
  color: #ffe26f;
  font-size: .6em;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.3;
}
#research-title,
#publications-title,
#teaching-title,
#contact-title {
  font-size: clamp(1.8rem, 3.2vw, 2.5rem);
  letter-spacing: -.035em;
  line-height: 1.16;
}
.research-card h3 {
  color: #ffe26f;
  font-size: clamp(1.08rem, 1.92vw, 1.5rem);
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.3;
}
.research-card p { font-size: 1.06rem; }
.publication-list h3 {
  color: #ffe26f;
  font-size: 1.06rem;
}
.publications .section-intro,
.publications .text-link,
.publication-list .year,
.publication-list p,
.publication-list a {
  font-size: 1.06rem;
}
.publications .text-link,
.teaching .text-link {
  color: var(--cyan);
  font-size: 1.06rem;
}
.teaching-grid h3 { color: #ffe26f; }
.teaching-section h2#przeprowadzone-szkolenia { scroll-margin-top: 7rem; }
.footer-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: 3rem;
  margin-top: 2rem;
}
.footer-contact-details p {
  margin: 0 0 1.25rem;
  color: #c5d9ea;
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.55;
}
.footer-contact-details a {
  color: var(--cyan);
  text-underline-offset: .16em;
}
#kontakt a { text-decoration: none; }
#kontakt .contact-email span,
#kontakt .email-domain,
#kontakt .contact-phone,
#kontakt .contact-floor {
  color: #ffe26f;
}
#kontakt .contact-address { color: var(--cyan); }
.footer-map iframe {
  display: block;
  width: 100%;
  height: 300px;
  border: 1px solid var(--line);
}
.map-attribution {
  display: inline-block;
  margin-top: .55rem;
  color: var(--dim);
  font-size: .8rem;
}
@media (max-width: 760px) {
  .footer-contact-layout { grid-template-columns: 1fr; gap: 1.25rem; }
  .footer-map iframe { height: 260px; }
}
@media (max-width: 760px) {
  .profile-links { flex-wrap: wrap; width: min(100%, 23rem); column-gap: .5rem; row-gap: .5rem; }
  .profile-links a {
    gap: .3rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    padding: .15rem .1rem;
    font-size: .875rem;
  }
  .profile-links a > span[aria-hidden="true"] { display: none; }
}

/* Institution links retain each page's established affiliation color. */
.publication-eyebrow .eyebrow-institution a {
  color: inherit;
  text-decoration: none;
}
.publication-eyebrow .eyebrow-institution a:hover,
.publication-eyebrow .eyebrow-institution a:focus-visible {
  text-decoration: underline;
  text-underline-offset: .16em;
}

/* Language switch uses the supplied flag, with an accessible name on the image. */
.main-nav .language { display: inline-flex; align-items: center; }
.language-icon {
  display: block;
  flex: 0 0 auto;
  width: 1.65rem;
  height: 1.65rem;
  object-fit: contain;
  border-radius: 50%;
}
@media (max-width: 760px) {
  .language-icon { width: 1.4rem; height: 1.4rem; }
}

/* Keep the research image opaque and aligned to the site content width; its proportions are intentional. */
.hero-pointer-grid {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.page-hero > .hero-pointer-grid { z-index: 0; }
.page-hero > .content-width { position: relative; z-index: 1; }
/* The interactive canvas replaces the old right-hand static grid. */
body[data-page] .page-hero:has(> .hero-pointer-grid)::after { display: none; }
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
  .hero-pointer-grid { display: none; }
}

.research { background: linear-gradient(180deg, #061524, #061a2b); }
.research-image-wrap { margin-bottom: 3.5rem; }
.research-image {
  display: block;
  width: 100%;
  height: min(25.5vw, 330px);
  object-fit: fill;
}
@media (max-width: 760px) {
  .research-image-wrap { margin-bottom: 2.25rem; }
  .research-image { height: 25.5vw; }
}


/* Keep linked outreach event descriptions at the original body size and color. */
body[data-page="popularyzacja"] .record-list a.outreach-event-link {
  font: inherit;
  color: inherit;
  white-space: normal;
  text-underline-offset: .18em;
}
body[data-page="popularyzacja"] .record-list a.outreach-event-link:hover,
body[data-page="popularyzacja"] .record-list a.outreach-event-link:focus-visible { color: #ffe26f; }

/* Floating return link: same shape, page-specific palette, no icon font. */
.scroll-to-top {
  --top-background: #0b1d30;
  --top-accent: #8bcfff;
  position: fixed;
  z-index: 30;
  right: max(1.5rem, env(safe-area-inset-right));
  bottom: max(1.5rem, env(safe-area-inset-bottom));
  display: grid;
  place-items: center;
  width: 3.75rem;
  height: 3.75rem;
  border: 2px solid var(--top-accent);
  border-radius: .5rem;
  color: var(--top-accent);
  background: var(--top-background);
  box-shadow: 0 .3rem 1rem rgba(0, 0, 0, .35);
  text-decoration: none;
}
.scroll-to-top[hidden] { display: none; }
.scroll-to-top svg { width: 1.5rem; height: 2.25rem; }
.scroll-to-top:hover { color: #fff; border-color: #fff; }
.scroll-to-top:focus-visible { outline: 3px solid #ffe26f; outline-offset: 4px; }
body[data-page="konferencje"] .scroll-to-top { --top-background: #352417; --top-accent: #e6b879; }
body[data-page="kursy"] .scroll-to-top { --top-background: #103024; --top-accent: #b8d98c; }
body[data-page="projekty"] .scroll-to-top { --top-background: #29173d; --top-accent: #d2b5ef; }
body[data-page="popularyzacja"] .scroll-to-top { --top-background: #282828; --top-accent: #d9d1c4; }
body[data-page="deklaracja"] .scroll-to-top { --top-background: #514637; --top-accent: #f5c08c; }
@media (max-width: 760px) {
  .scroll-to-top {
    width: 3rem;
    height: 3rem;
    right: max(.875rem, env(safe-area-inset-right));
    bottom: max(1.125rem, env(safe-area-inset-bottom));
  }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Keep collapsed homepage navigation out of keyboard navigation at phone and tablet widths. */
/* Compact year navigation follows the existing page palette; no filtering or animation. */
.year-index { margin-bottom: 2.75rem; padding: 1rem 1.2rem; border: 1px solid var(--line); }
.year-index + .category-section { margin-top: 0; }
.year-index-label { margin: 0 0 .8rem; color: var(--ink); font-size: .95rem; }
.year-index-group + .year-index-group { margin-top: 1rem; }
.year-index-group > p { margin: 0 0 .45rem; color: var(--muted); font-size: .85rem; }
.year-index ul { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0; padding: 0; list-style: none; }
.year-index a { display: inline-flex; align-items: center; min-height: 2.2rem; padding: .2rem .6rem; border: 1px solid var(--line); color: var(--cyan); font-size: .85rem; text-decoration: none; }
.year-index a:hover, .year-index a:focus-visible, .back-to-top a:hover, .back-to-top a:focus-visible { color: #ffe26f; }
.back-to-top { margin: .65rem 0 0; text-align: right; font-size: .85rem; }
.back-to-top a { color: var(--cyan); text-underline-offset: .2em; }
body[data-page] #tresc, body[data-page] h2[id], #kontakt { scroll-margin-top: 7rem; }
@media (min-width: 1101px) {
  body[data-page] .site-header .main-nav,
  .home-page-header .main-nav { gap: clamp(.65rem, 1.25vw, 1.25rem); }
}
@media (max-width: 760px) {
  .year-index { padding: .85rem; }
  .year-index a { min-height: 2.75rem; }
}

@media (max-width: 1100px) {
  .home-page-header .main-nav {
    visibility: hidden;
    transition: max-height .28s ease, opacity .2s ease;
  }
  .home-page-header .main-nav.open {
    visibility: visible;
    max-height: min(30rem, calc(100dvh - 4.65rem));
    overflow-y: auto;
  }
}
