/* Service pages — shared layout like Лендинги */
@import url("https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Manrope:wght@400;500;600;700;800&display=swap");

body.page .entry-header,
body.page .ast-breadcrumbs-wrapper{display:none!important}
body.page #content>.ast-container,
body.page .site-content>.ast-container{max-width:none!important;padding-left:0!important;padding-right:0!important}
body.page .entry-content{
  margin:0!important;
  font-family:Manrope,sans-serif!important;
  color:#173038;
  background:
    radial-gradient(ellipse 70% 40% at 100% 0%,rgba(42,154,143,.12),transparent 55%),
    radial-gradient(ellipse 50% 35% at 0% 40%,rgba(31,111,120,.08),transparent 50%),
    #eef3f2!important;
}
body.page .entry-content>.alignfull{margin-left:0!important;margin-right:0!important;max-width:none!important;width:100%!important}

@keyframes feLandIn{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:none}
}
@keyframes feBlob{
  0%,100%{transform:translate(0,0) scale(1)}
  50%{transform:translate(-3%,4%) scale(1.06)}
}
@keyframes feShine{
  from{background-position:0% 50%}
  to{background-position:100% 50%}
}

body.page .fe-page-hero,
body.page .fe-page-hero.wp-block-group{
  position:relative!important;
  min-height:72vh!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:flex-start!important;
  padding:7.5rem 6vw 3.75rem!important;
  margin:0!important;
  max-width:none!important;
  width:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:
    linear-gradient(115deg,rgba(238,243,242,.97) 0%,rgba(238,243,242,.82) 38%,rgba(238,243,242,.35) 68%,rgba(15,36,42,.18) 100%),
    radial-gradient(ellipse 55% 70% at 88% 18%,rgba(42,154,143,.45),transparent 62%),
    radial-gradient(ellipse 40% 50% at 70% 60%,rgba(31,111,120,.28),transparent 70%)!important;
}
body.page .fe-page-hero::before{
  content:"";
  position:absolute;inset:auto -8% -20% 45%;
  height:70%;
  background:radial-gradient(ellipse at center,rgba(42,154,143,.35),transparent 68%);
  animation:feBlob 9s ease-in-out infinite;
  pointer-events:none;
}
body.page .fe-page-hero>*{position:relative;z-index:1;width:min(94vw,1040px)!important;max-width:1040px!important;animation:feLandIn .7s ease both}
body.page .fe-page-hero .fe-kicker{animation-delay:.05s}
body.page .fe-page-hero h1{animation-delay:.12s}
body.page .fe-page-hero .fe-lead{animation-delay:.2s}
body.page .fe-page-hero .wp-block-buttons{animation-delay:.28s}

body.page .fe-page-hero .fe-kicker{
  margin:0 0 .85rem!important;
  font-size:.88rem!important;
  font-weight:800!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  color:#1f6f78!important;
}
body.page .fe-page-hero h1,
body.page .fe-page-hero .wp-block-heading{
  margin:0 0 1rem!important;
  font-family:"Bricolage Grotesque",sans-serif!important;
  font-weight:800!important;
  font-size:clamp(2.4rem,5.4vw,3.85rem)!important;
  letter-spacing:-.045em!important;
  line-height:1.02!important;
  color:#0f242a!important;
  max-width:14ch!important;
}
body.page .fe-page-hero .fe-lead{
  margin:0 0 1.75rem!important;
  color:#1a333b!important;
  font-size:clamp(1.08rem,1.9vw,1.32rem)!important;
  font-weight:600!important;
  max-width:40ch!important;
  line-height:1.5!important;
}
body.page .fe-page-hero .wp-block-buttons{display:flex!important;flex-wrap:wrap!important;gap:.85rem!important;margin:0!important}
body.page .fe-btn-primary .wp-block-button__link{
  background:linear-gradient(120deg,#1f6f78,#2a9a8f,#1f6f78)!important;
  background-size:200% 100%!important;
  color:#f4fffd!important;
  border:none!important;
  border-radius:6px!important;
  font-weight:800!important;
  padding:.95rem 1.5rem!important;
  transition:transform .2s ease,box-shadow .2s ease,background-position .5s ease!important;
  animation:feShine 4s linear infinite alternate;
}
body.page .fe-btn-primary .wp-block-button__link:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(31,111,120,.28)!important;
}
body.page .fe-btn-ghost .wp-block-button__link{
  background:rgba(247,250,249,.82)!important;
  color:#173038!important;
  border:1px solid rgba(23,48,56,.14)!important;
  border-radius:6px!important;
  font-weight:700!important;
  padding:.95rem 1.5rem!important;
  transition:transform .2s ease,border-color .2s ease!important;
}
body.page .fe-btn-ghost .wp-block-button__link:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(31,111,120,.45)!important;
}

body.page .fe-section,
body.page .fe-section.wp-block-group{
  padding:4.75rem 6vw!important;
  max-width:1100px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.page .fe-section h2{
  margin:0 0 .65rem!important;
  font-family:"Bricolage Grotesque",sans-serif!important;
  font-size:clamp(1.85rem,3.5vw,2.45rem)!important;
  letter-spacing:-.035em!important;
  color:#0f242a!important;
}
body.page .fe-section>p{
  margin:0 0 1.75rem!important;
  color:#5a7179!important;
  font-size:1.05rem!important;
  max-width:48ch!important;
  line-height:1.55!important;
}
body.page .fe-section h3{
  margin:0 0 .45rem!important;
  font-family:"Bricolage Grotesque",sans-serif!important;
  font-size:1.28rem!important;
  letter-spacing:-.02em!important;
  color:#173038!important;
}
body.page .fe-section .wp-block-columns{margin-top:.25rem!important;gap:1.35rem!important}
body.page .fe-section .wp-block-column{
  padding:1.25rem 0 1rem!important;
  border-top:3px solid #1f6f78!important;
  transition:transform .25s ease,border-color .25s ease!important;
}
body.page .fe-section .wp-block-column:hover{
  transform:translateY(-4px);
  border-top-color:#2a9a8f!important;
}
body.page .fe-section .wp-block-column p{color:#5a7179!important;line-height:1.5!important;margin:0!important}
body.page .fe-section .wp-block-column p+p{margin-top:.55rem!important}
body.page .fe-section strong{
  color:#0f242a!important;
  font-size:clamp(1.55rem,2.8vw,1.9rem)!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
  font-family:"Bricolage Grotesque",sans-serif!important;
}

body.page .fe-fun-line{
  display:inline-block!important;
  margin:0 0 1rem!important;
  padding:.2rem 0!important;
  font-weight:800!important;
  font-size:.95rem!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  color:#2a9a8f!important;
  border-bottom:2px solid rgba(42,154,143,.35)!important;
}

body.page .fe-steps .wp-block-column{
  border-top:none!important;
  padding-top:0!important;
  counter-increment:feStep;
}
body.page .fe-steps{counter-reset:feStep}
body.page .fe-steps h3::before{
  content:counter(feStep, decimal-leading-zero);
  display:block;
  margin-bottom:.55rem;
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:1.7rem;
  font-weight:800;
  letter-spacing:-.04em;
  color:#1f6f78;
  line-height:1;
}

body.page .fe-price-note{
  margin-top:1.5rem!important;
  padding-top:1rem!important;
  border-top:1px dashed rgba(23,48,56,.18)!important;
  color:#5a7179!important;
  font-size:.95rem!important;
}

body.page .fe-related a{
  color:#1f6f78!important;
  font-weight:700!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(31,111,120,.25);
  transition:border-color .2s ease,color .2s ease;
}
body.page .fe-related a:hover{color:#18585f!important;border-bottom-color:#18585f}
body.page .fe-related li{margin:0 0 .7rem!important;color:#5a7179!important}

body.page .fe-cta-band,
body.page .fe-cta-band.wp-block-group{
  margin:0!important;
  padding:3.75rem 6vw!important;
  max-width:none!important;
  width:100%!important;
  background:
    radial-gradient(ellipse 50% 120% at 100% 0%,rgba(255,255,255,.16),transparent 55%),
    linear-gradient(125deg,#163f46 0%,#1f6f78 48%,#2a9a8f 100%)!important;
  color:#f4fffd!important;
}
body.page .fe-cta-band h2{
  margin:0 0 .7rem!important;
  font-family:"Bricolage Grotesque",sans-serif!important;
  font-size:clamp(1.75rem,3.4vw,2.35rem)!important;
  color:#f4fffd!important;
  letter-spacing:-.03em!important;
  max-width:18ch;
}
body.page .fe-cta-band p{
  margin:0 0 1.25rem!important;
  color:rgba(244,255,253,.92)!important;
  max-width:40ch!important;
  font-size:1.05rem!important;
}
body.page .fe-cta-band .fe-btn-light .wp-block-button__link{
  background:#f3faf9!important;
  color:#18585f!important;
  border:none!important;
  border-radius:6px!important;
  font-weight:800!important;
  padding:.95rem 1.5rem!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
body.page .fe-cta-band .fe-btn-light .wp-block-button__link:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}

@media (max-width:781px){
  body.page .fe-page-hero{min-height:78vh!important;padding:6.5rem 5vw 2.75rem!important}
  body.page .fe-section{padding:3.4rem 5vw!important}
  body.page .fe-section .wp-block-column:hover{transform:none}
}
@media (prefers-reduced-motion:reduce){
  body.page .fe-page-hero::before,
  body.page .fe-btn-primary .wp-block-button__link,
  body.page .fe-page-hero>*{animation:none!important}
}

/* CTA band centered */
body.page .fe-cta-band,
body.page .fe-cta-band.wp-block-group{
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
body.page .fe-cta-band h2,
body.page .fe-cta-band .wp-block-heading{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:22ch!important;
}
body.page .fe-cta-band p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.page .fe-cta-band .wp-block-buttons{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
}

#fe-bottom-cta{scroll-margin-top:5.5rem}
html{scroll-behavior:smooth}

/* Service heroes: closer to header, wider titles */
body.page .fe-page-hero,
body.page .fe-page-hero.wp-block-group{
  min-height:auto!important;
  justify-content:flex-start!important;
  padding:3.35rem 6vw 2rem!important;
}
body.page .fe-page-hero h1,
body.page .fe-page-hero .wp-block-heading{
  max-width:min(22em,92vw)!important;
  width:100%!important;
}
body.page .fe-page-hero .fe-lead{
  max-width:min(42em,92vw)!important;
}
@media (max-width:781px){
  body.page .fe-page-hero,
  body.page .fe-page-hero.wp-block-group{
    min-height:auto!important;
    padding:3.1rem 5vw 1.6rem!important;
  }
}

/* === fe-heading-weight === */
body.page .fe-page-hero h1,
body.page .fe-page-hero .wp-block-heading,
body.page .fe-section h2,
body.page .fe-section h3,
body.page .fe-cta-band h2,
body.page .fe-cta-band .wp-block-heading{
  font-weight:600!important;
}

/* === fe-mobile-no-hero-photo === */
@media (max-width:921px){
  body.page .fe-page-hero,
  body.page .fe-page-hero.wp-block-group{
    background:
      linear-gradient(180deg,#faf6f2 0%,#f3ece8 100%),
      radial-gradient(ellipse 80% 60% at 100% 0%,rgba(139,41,66,.38),transparent 62%)!important;
  }
}