/* Strona dla psychologa — podstrona SEO */

.seo-hero{
  padding:132px 0 92px;
  background:linear-gradient(135deg,#f6f8f5,#eef3ef);
  overflow:hidden;
}

.seo-hero-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:center;
}

.seo-hero-copy h1{
  max-width:760px;
  margin-bottom:24px;
  font-size:clamp(3.4rem,5.6vw,5.8rem);
  line-height:.94;
  letter-spacing:-.045em;
}

.seo-hero-copy h1 span{
  display:block;
  margin-top:16px;
  max-width:13ch;
  font-size:.54em;
  line-height:1.02;
  color:#4d5d56;
}

.seo-hero-lead,
.seo-hero-copy2{
  max-width:650px;
  color:#58645e;
  line-height:1.75;
}

.seo-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:30px;
}

.seo-hero-price{
  display:flex;
  align-items:baseline;
  gap:10px;
  margin-top:28px;
}

.seo-hero-price span{
  color:#6a756f;
  font-size:.78rem;
}

.seo-hero-price strong{
  font-size:1.65rem;
}

.seo-hero-visual{
  position:relative;
  min-height:470px;
}

.seo-preview{
  position:absolute;
  width:72%;
  min-height:210px;
  padding:28px;
  border-radius:24px;
  box-shadow:0 24px 60px rgba(27,43,36,.10);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.seo-preview span{
  margin-bottom:auto;
  font-size:.66rem;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.seo-preview strong{
  max-width:12ch;
  font-size:1.4rem;
  line-height:1.1;
}

.seo-preview-classic{
  top:0;
  left:0;
  background:#fff;
}

.seo-preview-premium{
  top:105px;
  right:0;
  background:#153a32;
  color:#fff;
}

.seo-preview-team{
  left:42px;
  bottom:0;
  background:#dfe7df;
}

.seo-article-section{
  padding:92px 0 110px;
  background:#fff;
}

.seo-article-grid{
  display:grid;
  grid-template-columns:220px minmax(0,760px);
  gap:70px;
  justify-content:center;
  align-items:start;
}

.seo-toc{
  position:sticky;
  top:110px;
  padding-top:6px;
}

.seo-toc nav{
  display:flex;
  flex-direction:column;
  border-top:1px solid rgba(20,35,29,.12);
}

.seo-toc a{
  padding:13px 0;
  border-bottom:1px solid rgba(20,35,29,.10);
  font-size:.78rem;
  color:#5f6964;
}

.seo-article h2{
  margin:54px 0 16px;
  font-size:clamp(1.7rem,2.4vw,2.25rem);
  line-height:1.15;
}

.seo-article h2:first-child{
  margin-top:0;
}

.seo-article p,
.seo-article li{
  font-size:1rem;
  line-height:1.78;
  color:#4f5954;
}

.seo-article ul{
  margin:18px 0 28px;
  padding-left:1.2rem;
}

.seo-benefits,
.seo-projects,
.seo-faq,
.seo-links-section{
  padding:92px 0;
}

.seo-benefits{
  background:#f5f7f4;
}

.seo-projects{
  background:#eef2ee;
}

.seo-faq{
  background:#fff;
}

.seo-links-section{
  background:#f5f7f4;
}

.seo-section-head{
  max-width:760px;
  margin-bottom:42px;
}

.seo-section-head h2{
  margin-bottom:12px;
  font-size:clamp(2.1rem,3.8vw,3.6rem);
  line-height:1.03;
}

.seo-section-head > p:last-child{
  color:#66716b;
}

.seo-benefit-grid,
.seo-project-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.seo-benefit-grid article,
.seo-project-card{
  padding:28px;
  border:1px solid rgba(20,35,29,.10);
  border-radius:20px;
  background:#fff;
}

.seo-benefit-grid article span{
  display:block;
  margin-bottom:56px;
  color:#87918c;
  font-size:.75rem;
}

.seo-benefit-grid h3,
.seo-project-card h3{
  font-size:1.5rem;
}

.seo-benefit-grid p,
.seo-project-card p{
  color:#63706a;
}

.seo-project-card.featured{
  background:#153a32;
  color:#fff;
}

.seo-project-card.featured p{
  color:rgba(255,255,255,.68);
}

.seo-project-type{
  font-size:.68rem!important;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.seo-project-card a{
  display:inline-block;
  margin-top:22px;
  font-weight:700;
  font-size:.8rem;
  text-decoration:underline;
  text-underline-offset:4px;
}

.seo-project-cta{
  margin-top:28px;
}

.seo-faq-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.seo-faq-grid article{
  padding:26px;
  border-top:2px solid #153a32;
  background:#f7f8f6;
}

.seo-faq-grid h3{
  margin-bottom:12px;
  font-size:1.05rem;
}

.seo-faq-grid p{
  margin:0;
  color:#626e68;
  line-height:1.7;
}

.seo-links-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}

.seo-links-grid a{
  padding:22px 24px;
  border:1px solid rgba(20,35,29,.10);
  border-radius:16px;
  background:#fff;
}

.seo-links-grid strong{
  display:block;
  margin-bottom:5px;
}

.seo-links-grid span{
  color:#6a756f;
  font-size:.88rem;
}

@media(max-width:900px){
  .seo-hero-grid{
    grid-template-columns:1fr;
  }

  .seo-hero-visual{
    min-height:430px;
    max-width:680px;
  }

  .seo-article-grid{
    grid-template-columns:1fr;
    gap:30px;
  }

  .seo-toc{
    position:static;
  }

  .seo-toc nav{
    display:grid;
    grid-template-columns:repeat(2,1fr);
  }

  .seo-benefit-grid,
  .seo-project-grid,
  .seo-faq-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  .seo-hero{
    padding:102px 0 64px;
  }

  .seo-hero-copy h1{
    font-size:clamp(2.9rem,13vw,4rem);
  }

  .seo-hero-copy h1 span{
    font-size:.58em;
  }

  .seo-hero-actions{
    flex-direction:column;
  }

  .seo-hero-actions .btn{
    width:100%;
  }

  .seo-hero-visual{
    min-height:370px;
  }

  .seo-preview{
    width:78%;
    min-height:175px;
    padding:22px;
  }

  .seo-preview-premium{
    top:86px;
  }

  .seo-preview-team{
    left:20px;
  }

  .seo-article-section{
    padding:70px 0 78px;
  }

  .seo-toc nav{
    grid-template-columns:1fr;
  }

  .seo-benefits,
  .seo-projects,
  .seo-faq,
  .seo-links-section{
    padding:72px 0;
  }

  .seo-links-grid{
    grid-template-columns:1fr;
  }
}


/* =====================================================
   HERO CARDS — CZYTELNA WERSJA
   ===================================================== */

.seo-hero-visual{
  min-height:520px;
}

.seo-preview{
  width:74%;
  min-height:160px;
  padding:24px 28px;
  justify-content:flex-start;
  overflow:visible;
}

.seo-preview span{
  margin-bottom:28px;
}

.seo-preview strong{
  max-width:15ch;
  font-size:1.28rem;
  line-height:1.12;
  overflow:visible;
}

.seo-preview-classic{
  top:0;
  left:0;
  z-index:3;
}

.seo-preview-premium{
  top:170px;
  right:0;
  z-index:2;
}

.seo-preview-team{
  top:340px;
  left:40px;
  bottom:auto;
  z-index:1;
}

/* FAQ — tekst zgodny z aktualną ofertą ma trochę więcej miejsca */
.seo-faq-grid article{
  min-height:210px;
}

@media(max-width:900px){
  .seo-hero-visual{
    min-height:500px;
  }

  .seo-preview{
    width:72%;
  }

  .seo-preview-premium{
    top:165px;
  }

  .seo-preview-team{
    top:330px;
  }
}

@media(max-width:600px){
  .seo-hero-visual{
    min-height:440px;
  }

  .seo-preview{
    width:82%;
    min-height:138px;
    padding:20px 22px;
  }

  .seo-preview span{
    margin-bottom:20px;
  }

  .seo-preview strong{
    font-size:1.08rem;
    max-width:16ch;
  }

  .seo-preview-premium{
    top:145px;
  }

  .seo-preview-team{
    top:290px;
    left:18px;
  }

  .seo-faq-grid article{
    min-height:0;
  }
}


/* =====================================================
   STRONA DLA GABINETU — TEAM FOCUS
   ===================================================== */

.seo-hero-copy h1 span{
  max-width:14ch;
}

.team-hero-visual{
  min-height:520px;
}

.team-preview-card{
  position:absolute;
  width:72%;
  min-height:150px;
  padding:24px 28px;
  border-radius:22px;
  box-shadow:0 24px 60px rgba(27,43,36,.10);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.team-preview-card span{
  font-size:.66rem;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.team-preview-card strong{
  max-width:14ch;
  font-size:1.3rem;
  line-height:1.12;
}

.team-preview-main{
  top:0;
  left:0;
  background:#fff;
}

.team-preview-second{
  top:175px;
  right:0;
  background:#153a32;
  color:#fff;
}

.team-preview-third{
  top:350px;
  left:42px;
  background:#dfe7df;
}

.team-project-focus{
  background:#eef2ee;
}

.team-features-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.team-features-grid article{
  padding:26px;
  border:1px solid rgba(20,35,29,.10);
  border-radius:18px;
  background:#fff;
}

.team-features-grid article span{
  display:block;
  margin-bottom:48px;
  color:#87918c;
  font-size:.74rem;
}

.team-features-grid h3{
  margin-bottom:10px;
  font-size:1.35rem;
}

.team-features-grid p{
  margin:0;
  color:#63706a;
}

.team-project-focus .seo-project-cta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.team-project-focus .btn-ghost{
  border:1px solid rgba(20,35,29,.18);
  color:#153a32;
  background:#fff;
}

@media(max-width:900px){
  .team-features-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .seo-hero-copy h1 span{
    max-width:15ch;
  }

  .team-hero-visual{
    min-height:430px;
  }

  .team-preview-card{
    width:82%;
    min-height:130px;
    padding:20px 22px;
  }

  .team-preview-second{
    top:145px;
  }

  .team-preview-third{
    top:290px;
    left:18px;
  }

  .team-features-grid{
    grid-template-columns:1fr;
  }

  .team-features-grid article span{
    margin-bottom:28px;
  }

  .team-project-focus .seo-project-cta{
    flex-direction:column;
  }

  .team-project-focus .seo-project-cta .btn{
    width:100%;
  }
}


/* Strona dla gabinetu psychoterapii — drobne dostrojenie */
.seo-hero-copy h1 span{
  max-width:15ch;
}

.team-preview-second strong{
  max-width:16ch;
}

@media(max-width:600px){
  .seo-hero-copy h1 span{
    max-width:16ch;
  }
}
