/* Konrad Kmiec — accepted A–F design refinement, preserving current content. */
:root{--brand-text:#1925aa;--brand-ink:#1925aa}
body{color:#1925aa}
/* Set the component ink as well as paragraph color; mobile inherits these tokens. */
#kk-desktop-review .kk-site{--kk-body:#1925aa}
#kk-about-mask .km-site{--km-ink:#1925aa}

/* A. Kai's cobalt serves as the readable primary ink, not merely a headline accent. */
body :is(.kk-site,.km-site,.km-page) p{color:#1925aa;line-height:1.62;letter-spacing:-.012em}
#kk-desktop-review .kk-intro-bottom p{font-size:16px!important;line-height:1.62!important;color:#1925aa!important}
#kk-desktop-review .kk-about p{font-size:17px;line-height:1.65;color:#1925aa!important}
#kk-desktop-review .kk-about-unified .kk-about-copy p{
  color:#1925aa!important;-webkit-text-fill-color:currentColor!important;
  font:400 clamp(16px,1.35cqi,18px)/1.62 Inter,Arial,sans-serif;letter-spacing:-.012em;
}
#kk-desktop-review .kk-section-label h2,#kk-desktop-review .kk-section-label>span,
#kk-desktop-review .kk-eyebrow{font-size:13px;line-height:1.4}
#kk-desktop-review .kk-featured-bottom,#kk-desktop-review .kk-featured-bottom>a{font-size:13px}
#kk-desktop-review .kk-panel-category{font-size:13px}
#kk-desktop-review .kk-album-link{font-size:14px}
#kk-about-mask .km-intro-copy p,#kk-about-mask .km-reading p,
#kk-about-mask .km-stack-copy p,#kk-about-mask .km-partners{color:#1925aa!important;-webkit-text-fill-color:#1925aa!important}
#kk-about-mask .km-reading p.km-poster-hint,#kk-about-mask .kk-collab-note,
#kk-about-mask .km-credit-meta,#kk-about-mask .kk-logo figcaption{
  color:#49538a!important;-webkit-text-fill-color:currentColor!important;
}
#kk-about-mask .km-intro-copy p+p,#kk-about-mask .km-reading p{font-size:16px;line-height:1.64}
#kk-about-mask .km-stack-kicker,#kk-about-mask .km-section-label{font-size:13px}
#kk-about-mask .km-stack-copy p{font-size:16px;line-height:1.62}
#km-curtain-catalog .km-page{--text:#1925aa;--muted-ink:#49538a}
#km-curtain-catalog .km-page p{color:#1925aa}
#km-curtain-catalog .km-filters button{font-size:13px}
#km-curtain-catalog .km-kicker,#km-curtain-catalog .km-category{font-size:13px}
#km-curtain-catalog .km-mini-no,#km-curtain-catalog .km-gallery-end{font-size:12px}
#km-album-dopracowany .km-page{--text:#1925aa;--muted-ink:#49538a}
#km-album-dopracowany .km-page .ks-description{font-size:clamp(17px,1.55vw,20px);line-height:1.62;max-width:58ch;color:#1925aa!important}
#km-album-dopracowany .km-page .ks-facts,#km-album-dopracowany .km-page .ks-eyebrow{font-size:13px;color:#49538a}
#km-album-dopracowany .km-page .ks-related-card h3{font-size:clamp(18px,1.75vw,23px)}

/* C. Full-bleed photography with a disciplined, readable text container. */
@media(min-width:1000px){
  #kk-desktop-review .kk-panels{
    position:relative;left:50%;transform:translateX(-50%);
    width:min(1840px,calc(var(--site-viewport-width,100vw) - 36px));
    max-width:none;height:clamp(290px,34vw,450px);
  }
}

/* B03. Fixed seven-album rhythm: wide / normal, three normals, normal / wide. */
#km-curtain-catalog .km-gallery{
  position:relative;left:50%;transform:translateX(-50%);
  width:min(1800px,calc(var(--site-viewport-width,100vw) - 48px));
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(35px,4.5vw,70px) clamp(15px,2.2vw,32px);
  align-items:start;padding:5px 0 114px;
}
#km-curtain-catalog .km-gallery .km-work,
#km-curtain-catalog .km-gallery .km-work[data-side="right"]{
  grid-column:span 2;width:100%;margin:0;transform:none;
}
#km-curtain-catalog .km-gallery .km-work[data-b03="wide"]{grid-column:span 4}
#km-curtain-catalog .km-gallery .km-frame{aspect-ratio:4/5}
#km-curtain-catalog .km-gallery .km-work[data-b03="wide"] .km-frame{aspect-ratio:16/9}
#km-curtain-catalog .km-work h2{font:600 clamp(21px,1.8vw,27px)/1.22 Inter,Arial,sans-serif;letter-spacing:-.028em;color:#1925aa!important}
#km-curtain-catalog .km-caption{margin-top:14px}
#km-curtain-catalog .km-category{margin-top:8px;color:#49538a}
#km-curtain-catalog .km-frame.b03-diptych .km-parallax-layer{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
}
#km-curtain-catalog .km-frame.b03-diptych .km-parallax-layer img{
  width:100%;height:100%;min-width:0;object-fit:cover;transform:scale(1.035)!important;
}
@media(max-width:1050px){
  #km-curtain-catalog .km-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 22px}
  #km-curtain-catalog .km-gallery .km-work,
  #km-curtain-catalog .km-gallery .km-work[data-b03="wide"]{grid-column:span 1}
  #km-curtain-catalog .km-gallery .km-work[data-b03="wide"] .km-frame{aspect-ratio:4/5}
}
@media(max-width:680px){
  #km-curtain-catalog .km-gallery{grid-template-columns:1fr;width:calc(var(--site-viewport-width,100vw) - 40px);gap:35px;padding-bottom:36px}
  #km-curtain-catalog .km-gallery .km-work,
  #km-curtain-catalog .km-gallery .km-work[data-b03="wide"]{grid-column:1}
  #km-curtain-catalog .km-gallery .km-frame,
  #km-curtain-catalog .km-gallery .km-work[data-b03="wide"] .km-frame{aspect-ratio:4/3}
  #km-curtain-catalog .km-work h2{font-size:22px}
  #km-curtain-catalog .km-filters button{font-size:12px}
}

/* D. Keep the BYQ image-stack motion; center the sticky stage and alternate copy. */
@media(min-width:601px){
  #kk-about-mask .km-stack-rail{--stack-stage:clamp(430px,65vh,640px)}
  #kk-about-mask .km-stack-stage{
    top:max(0px,calc((100dvh - var(--stack-stage))/2));
  }
  #kk-about-mask .km-stack-frame,#kk-about-mask .km-stack-copy{top:50%}
  #kk-about-mask .km-stack-copy{
    transform:translateY(-50%) translateX(var(--rs-copy-x,0px)) translateY(var(--rs-copy-y,0px));
  }
}

/* E. Luna: a full central phrase and two receding solid, pale echoes. */
#kk-about-mask .km-luna-hero{--luna-stage:clamp(270px,34cqi,430px);--luna-travel:clamp(150px,18cqi,220px)}
#kk-about-mask .km-luna-rail{height:calc(var(--luna-stage) + var(--luna-travel))}
#kk-about-mask .km-luna-stage{position:sticky;top:0;height:var(--luna-stage)}
#kk-about-mask .km-luna-side{font-weight:700;pointer-events:none}
@media(max-width:600px){
  #kk-about-mask .km-luna-hero{--luna-stage:clamp(230px,64cqi,300px);--luna-travel:clamp(130px,40cqi,180px)}
}
@media(prefers-reduced-motion:reduce){
  #kk-about-mask .km-luna-rail{height:var(--luna-stage)}
  #kk-about-mask .km-luna-stage{position:relative}
}

/* F. A curved cobalt reveal triggered on entry, with outline overlapping ink. */
body footer.global-footer{
  background:var(--brand-paper)!important;
  isolation:isolate;
  /* Fill any final subpixel seam only after the rising panel has settled. */
  transition:background-color 0s linear 1.1s;
}
body footer.global-footer.is-visible{background:var(--brand-blue)!important}
html:root.is-at-footer{background:var(--brand-blue)!important}
@media(max-width:760px){
  /* iOS Safari samples both root and body for the area beneath its toolbar. */
  html:root.is-at-footer>body{background:var(--brand-blue)!important}
}
.global-footer-shell{background:var(--brand-blue);color:var(--brand-paper);transform:translate3d(0,102%,0);transition:transform 1.05s cubic-bezier(.22,.85,.23,1);will-change:transform}
.global-footer.is-visible .global-footer-shell{transform:translate3d(0,0,0)}
.global-footer-arc{height:70px;background:var(--brand-paper);border-radius:0 0 50% 50%/0 0 100% 100%;margin:0 -4%}
.global-footer-grid{align-items:center}
.global-footer h2{line-height:1!important}
.global-footer-title{display:inline-block;position:relative;isolation:isolate;white-space:nowrap;font:400 clamp(42px,6vw,94px)/1.02 Anton,Impact,sans-serif}
.global-footer-outline{
  position:absolute;inset:0;pointer-events:none;z-index:1;
  font:inherit;white-space:nowrap;color:transparent!important;-webkit-text-fill-color:transparent!important;
  -webkit-text-stroke:1px rgba(232,230,224,.6);
  opacity:0;transform:translate3d(21px,-16px,0);
  transition:opacity .75s .79s ease,transform 1s .77s cubic-bezier(.16,1,.3,1);
}
.global-footer.is-visible .global-footer-outline{opacity:.48;transform:translate3d(7px,-5px,0)}
.global-footer h2>.global-footer-script{
  display:block;font:500 clamp(30px,4vw,48px)/1.08 Caveat,cursive!important;
  text-transform:none;margin-top:7px;
}
.global-footer-title-text{display:block;clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(25px);transition:clip-path 1s .52s cubic-bezier(.16,1,.3,1),opacity .65s .52s,transform 1s .52s cubic-bezier(.16,1,.3,1)}
.global-footer.is-visible .global-footer-title-text{clip-path:inset(0);opacity:1;transform:none}
/* Album templates give every h2 their blue ink, even inside the shared footer.
   Keep the solid headline pale so it overlaps the decorative outline. */
#km-album-dopracowany .km-page .global-footer h2,
#km-album-dopracowany .km-page .global-footer-title-text{
  color:var(--brand-paper)!important;
  -webkit-text-fill-color:var(--brand-paper)!important;
}
.global-footer-script,.global-footer-contact,.global-footer-bottom{opacity:0;transform:translateY(14px);transition:opacity .65s 1s ease,transform .7s 1s ease}
.global-footer-contact{transition-delay:1.13s}
.global-footer-bottom{transition-delay:1.3s}
.global-footer.is-visible :is(.global-footer-script,.global-footer-contact,.global-footer-bottom){opacity:1;transform:none}
.global-footer-social a{font:500 19px/1.2 Caveat,cursive!important}
@media(max-width:760px){
  .global-footer-title{font-size:clamp(27px,8.8vw,58px)}
  .global-footer-arc{height:42px}
  .global-footer-content{padding:30px 20px 24px}
  .global-footer-grid{gap:25px}
  .global-footer-contact{font-size:clamp(17px,4.2vw,20px)}
  .global-footer-social a{font-size:18px!important}
}
@media(prefers-reduced-motion:reduce){
  .global-footer-shell,.global-footer-title-text,.global-footer-outline,
  .global-footer-script,.global-footer-contact,.global-footer-bottom{
    opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;
  }
  .global-footer-outline{opacity:.4!important;transform:translate3d(7px,-5px,0)!important}
}
