/* 4.17 - wspólna typografia, CTA i mobilna lista cen. */
/* Kontrola fontów. Zmieniamy wyłącznie rodzinę, nie wagi ani wielkości. */
body,body button,body input,body textarea,body select,
body .entry-content,body .person-teaser,body .person-role,
body .service-card p,body .price-item p{
  font-family:var(--oko-font-body,"Poppins",Arial,sans-serif);
}
body :is(h1,h2,h3,h4,h5,h6),
body .oko46-hero .hero-copy h1,
body .oko46-hero .oko46-hero-headline h1,
body .oko45-services-intro h2,
body .oko45-services-subtitle{
  font-family:var(--oko-font-headings,"Poppins",Arial,sans-serif)!important;
}
body :is(.eyebrow,.hero-kicker,.oko45-help-label,.booking-card-kicker,
  .mobile-nav-caption,.service-fact-label,.phone-link-label,
  .finder-label,.person-role,.footer-caption){
  font-family:var(--oko-font-labels,"Poppins",Arial,sans-serif)!important;
}
body :is(.btn,.text-link,.person-actions a,.service-readmore,.service-card .round-arrow,
 .phone-link,.nav-links a,.mobile-nav-phone,.journal-link,
 .team-help-strip-cta,.finder-person-actions a){
  font-family:var(--oko-font-buttons,"Poppins",Arial,sans-serif)!important;
}
/* Jasna alternatywa do zielonego CTA - obrys zamiast pustego tekstu. */
body .hero .action-row .btn-text,
body .steps-actions .btn-text,
body .profile-flow .action-row .btn-text,
body .closing-actions .btn-text,
body .page-hero .action-row .btn-text{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:transparent;
  color:var(--forest,#005550);
  border:1.5px solid var(--forest,#005550);
  border-radius:999px;
  padding:12px 20px;
  min-height:48px;
  text-decoration:none;
  box-shadow:none;
}
body .hero .action-row .btn-text:hover,
body .steps-actions .btn-text:hover,
body .profile-flow .action-row .btn-text:hover,
body .closing-actions .btn-text:hover,
body .page-hero .action-row .btn-text:hover{
  background:rgba(0,85,80,.06);
  border-color:var(--forest,#005550);
  color:var(--forest,#005550);
}
body :is(.hero .action-row,.steps-actions,.profile-flow .action-row,.closing-actions) .btn-text:focus-visible{
  outline:3px solid #90D8D4;
  outline-offset:3px;
}
/* Cennik: tytuł na całą szerokość, pod nim cena po lewej i Szczegóły po prawej. */
@media(max-width:700px){
  body .price-list .price-item{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    column-gap:8px;
    row-gap:13px;
    min-width:0;
    padding:18px;
  }
  body .price-list .price-item>.price-main{
    grid-column:1/-1;
    display:flex;
    align-items:flex-start;
    gap:14px;
    min-width:0;
    width:100%;
  }
  body .price-list .price-item>.price-main>div{min-width:0;flex:1 1 auto;}
  body .price-list .price-item>.price-main h3{
    overflow-wrap:break-word;
    hyphens:auto;
    max-width:none;
    margin:0 0 6px;
    line-height:1.25;
  }
  body .price-list .price-item>.price-main .price-icon{
    width:49px;height:49px;flex:0 0 49px;border-radius:16px;
  }
  body .price-list .price-item>.price-amount{
    grid-column:1;
    grid-row:2;
    justify-self:start;
    align-self:center;
    white-space:normal;
    overflow-wrap:anywhere;
    text-align:left;
    font-size:clamp(.82rem,3.5vw,1.05rem);
    font-weight:700;
    line-height:1.3;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(0,85,80,.07);
    color:var(--forest,#005550);
    max-width:100%;
  }
  body .price-list .price-item>.text-link{
    grid-column:2;
    grid-row:2;
    justify-self:end;
    white-space:nowrap;
    align-self:center;
    margin:0;
    font-size:clamp(.8rem,3.5vw,.9rem);
    display:inline-flex;
    gap:5px;
    align-items:center;
  }
}
@media(max-width:370px){
  body .price-list .price-item{grid-template-columns:minmax(0,1fr) max-content;column-gap:7px;padding:15px;}
  body .price-list .price-item>.price-amount{grid-column:1;grid-row:2;padding:7px 9px;font-size:.8rem;}
  body .price-list .price-item>.text-link{grid-column:2;grid-row:2;justify-self:end;font-size:.8rem;}
}
/* Drugorzędny telefon w biogramie ma własną, jasnozieloną klasę. */
body .profile-flow .action-row .btn-oko-soft{
  border:1.5px solid var(--forest,#005550);
}
body .profile-flow .action-row .btn-oko-soft:hover{
  border-color:var(--forest,#005550);
}
