.header nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:#ffc500;text-decoration-thickness:3px;text-underline-offset:9px}
.about-hero{min-height:870px;background:linear-gradient(to bottom,transparent 74%,white),url('assets/about-hero.png') center/cover no-repeat}
.about-breadcrumbs{display:flex;gap:12px;padding-top:42px;color:#42b8f5;font-size:16px;font-weight:600}
.about-breadcrumbs a:hover{text-decoration:underline}
.about-heading{padding-top:80px}
.about-heading h1{font-size:60px;line-height:1.2;margin:22px 0 0}
.about-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;align-items:center;margin-top:-20px;position:relative;margin-bottom:80px}
.about-copy{padding-right:0}
.about-copy>p{font-size:24px;line-height:1.2;margin-bottom:52px;max-width:635px}
.about-copy>p:last-child{margin-bottom:0}
.about-copy .about-highlight{padding:16px 20px 16px 0;border-radius:30px;background:linear-gradient(90deg,white,#edf4fd);margin-bottom:34px}
.about-gallery{display:grid;gap:22px}
.about-gallery img{width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;border-radius:30px}
.about-tiles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;margin-bottom:52px}
.about-tile{background:#06316d;color:white;border-radius:30px;padding:50px 55px 40px;display:flex;flex-direction:column;align-items:center;text-align:center}
.about-tile:nth-child(n+3){background:#46b4ee}
.about-tile-title{display:flex;gap:30px;align-items:center;min-height:80px}
.about-tile-title svg{width:65px;height:75px;flex-shrink:0}
.about-tile h2{font-size:36px;letter-spacing:0;line-height:1.15;text-align:left}
.about-tile>p{font-size:19px;line-height:1.2;margin:30px 0 45px}
.about-tile .button{margin-top:auto}
@media(max-width:1100px){
.about-hero{min-height:730px}.about-heading{padding-top:65px}.about-heading h1{font-size:46px}.about-copy>p{font-size:20px;margin-bottom:35px}.about-tile{padding:35px 30px}.about-tile h2{font-size:28px}.about-tile-title{gap:20px}.about-tile>p{font-size:16px}
}
@media(max-width:700px){
.about-hero{min-height:440px;padding-bottom:50px;background-image:linear-gradient(to bottom,transparent 70%,white),linear-gradient(90deg,#edf4fddd,#edf4fd55),url('assets/about-hero.png');background-position:center,center,62% center}
.about-breadcrumbs{font-size:13px;padding-top:25px}.about-heading{padding-top:55px}.about-heading h1{font-size:36px;max-width:340px}
.about-story{grid-template-columns:1fr;gap:30px;margin-top:-15px;margin-bottom:50px}.about-copy>p{font-size:18px;line-height:1.4;margin-bottom:28px}.about-copy .about-highlight{padding:18px 18px 18px 0;border-radius:22px;text-align:justify}.about-gallery img{border-radius:22px}.about-gallery{gap:16px}
.about-tiles{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.about-tile{border-radius:22px;padding:30px 25px}.about-tile h2{font-size:27px}.about-tile-title svg{width:50px;height:60px}.about-tile>p{line-height:1.4;margin:25px 0 30px}
}

.about-tile-title .about-icon-neosana{width:54px;height:90px}
.about-tile-title .about-icon-research{width:54px;height:80px}
.about-tile-title .about-icon-globe{width:70px;height:70px}
@media(max-width:700px){
  .about-tile-title .about-icon-neosana{width:44px;height:76px}
  .about-tile-title .about-icon-research{width:44px;height:68px}
  .about-tile-title .about-icon-globe{width:56px;height:56px}
}

/* Align card titles, descriptions and actions in consistent rows. */
.about-tile-title{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  width:100%;
  gap:25px;
  min-height:90px;
  align-items:center;
}
.about-tile-title svg{justify-self:center}
.about-tile h2{text-align:center}
.about-tile>p{width:100%;text-align:center}
@media(max-width:700px){
  .about-tile-title{grid-template-columns:56px minmax(0,1fr);gap:16px;min-height:80px}
}

/* Justification with explicit Polish soft hyphens in the text. */
.about-copy > p {
  text-align: justify;
  text-align-last: left;
  -webkit-hyphens: auto;
  hyphens: auto;
  hyphenate-limit-chars: 7 3 3;
  overflow-wrap: break-word;
}

/* Match the area below the mobile footer to its background. */
@media (max-width:700px) {
  html { background-color:#2e373a; }
  body { background-color:#fff; }
  footer { border-bottom:0; margin-bottom:0; padding-bottom:calc(45px + env(safe-area-inset-bottom, 0px)); }
}

/* Align the mobile contact content with the globe in the card above. */
@media (max-width:700px) {
  .contact-banner .container {
    padding-left:28px;
  }
  .contact-banner .button {
    min-width:0;
    width:275px;
    max-width:100%;
  }
}

/* Alternate company paragraphs and photos on mobile. */
@media (max-width:700px) {
  .about-story { gap:28px; }
  .about-story .about-copy,
  .about-story .about-gallery { display:contents; }
  .about-story .about-copy > p { margin-bottom:0; }
  .about-copy > p:nth-child(1) { grid-row:1; }
  .about-gallery > img:nth-child(1) { grid-row:2; }
  .about-copy > p:nth-child(2) { grid-row:3; }
  .about-gallery > img:nth-child(2) { grid-row:4; }
  .about-copy > p:nth-child(3) { grid-row:5; }
  .about-copy > p:nth-child(4) { grid-row:6; }
  .about-gallery > img:nth-child(3) { grid-row:7; }
}

@media(max-width:700px){
  .about-tile:first-child .about-tile-title{display:flex;justify-content:center;width:auto;max-width:100%;gap:10px;min-height:80px}
  .about-tile:first-child .about-tile-title svg{flex-shrink:0}
}

/* A wider mobile crop keeps both people in the hero photograph. */
@media(max-width:700px){
  .about-hero{
    background-color:#edf4fd;
    background-size:100% 100%,100% 100%,auto 360px;
    background-position:center,center,82% bottom;
    background-repeat:no-repeat;
  }
}

/* Keep the mobile title above the people and soften both photo edges. */
@media(max-width:700px){
  .about-hero{
    position:relative;
    isolation:isolate;
    background:#edf4fd;
    padding-bottom:275px;
  }
  .about-hero::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:auto 0 0;
    height:340px;
    background-image:linear-gradient(to bottom,#edf4fd 0%,rgba(237,244,253,0) 26%,rgba(255,255,255,0) 75%,#fff 100%),url('assets/about-hero.png');
    background-size:100% 100%,auto 380px;
    background-position:center,82% bottom;
    background-repeat:no-repeat;
    pointer-events:none;
  }
}
