/* =========================================================================
   AÇOS LITORAL — SERVIÇOS PREMIUM (v12)
   Ajustes exclusivos da página Serviços.
   ========================================================================= */

.page-servicos{
  --services-heading-font:Georgia,"Times New Roman",Times,serif;
  --services-black:#05070c;
  --services-black-soft:#0d1017;
  --services-yellow:#f5c400;
  --services-yellow-deep:#d5a900;
  --services-paper:#f6f6f3;
  --services-line:rgba(5,7,12,.14);
}

/* Mesma tipografia dos títulos da Home. */
.page-servicos :where(h1,h2,h3,h4,h5,h6,.h-lg){
  font-family:var(--services-heading-font)!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:-.018em!important;
}

/* =========================================================================
   BANNER — conteúdo centralizado
   ========================================================================= */
.page-servicos .phero > .container{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.page-servicos .phero h1{
  width:100%!important;
  max-width:21ch!important;
  margin-inline:auto!important;
  text-align:center!important;
  text-wrap:balance;
}
.page-servicos .phero .lead{
  width:100%!important;
  max-width:820px!important;
  margin-inline:auto!important;
  text-align:center!important;
  text-wrap:pretty;
}
.page-servicos .phero .actions{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  margin-inline:auto!important;
  text-align:center!important;
}

/* =========================================================================
   CABEÇALHO DA LISTA DE SERVIÇOS
   ========================================================================= */
.page-servicos .section-service-list > .container > .sec-head{
  display:grid!important;
  grid-template-columns:1fr!important;
  justify-items:center!important;
  width:100%!important;
  text-align:center!important;
}
.page-servicos .section-service-list .sec-head-main{
  width:100%!important;
  max-width:940px!important;
  margin-inline:auto!important;
  text-align:center!important;
}
.page-servicos .section-service-list .sec-head :where(h2,p){
  max-width:900px!important;
  margin-inline:auto!important;
  text-align:center!important;
}

/* =========================================================================
   SERVIÇOS DETALHADOS — alternância imagem/texto
   ========================================================================= */
.svc-detail{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:clamp(26px,4vw,60px);
  align-items:center;
  padding:clamp(28px,4vw,52px) 0;
  border-top:1px solid var(--hair);
  scroll-margin-top:calc(var(--nav-lo) + 24px);
}
.svc-detail:first-of-type{border-top:0}
.svc-detail-media{
  overflow:hidden;
  display:grid;
  place-items:center;
  aspect-ratio:5/4;
  padding:clamp(24px,3vw,44px);
  border:1px solid var(--hair-soft);
  border-radius:var(--r-lg);
  background:#fff;
  transition:transform .32s var(--ease-out),box-shadow .32s var(--ease-out),border-color .32s var(--ease-out);
}
.svc-detail-media img{width:100%;height:100%;object-fit:contain}
.svc-detail-body{text-align:center}
.svc-detail-body h3{margin:14px 0 16px}
.svc-detail-body p{max-width:56ch;margin:0 auto 24px;color:var(--steel-2);line-height:1.75}
.svc-detail-body .btn{margin-inline:auto}
.svc-detail:hover .svc-detail-media{transform:translateY(-5px);border-color:rgba(245,196,0,.5);box-shadow:var(--shadow)}
.page-servicos .svc-detail--image-left .svc-detail-media{order:0}
.page-servicos .svc-detail--image-left .svc-detail-body{order:1}
.page-servicos .svc-detail--image-right .svc-detail-body{order:0}
.page-servicos .svc-detail--image-right .svc-detail-media{order:1}

/* =========================================================================
   CABEÇALHOS PREMIUM DAS DUAS SEÇÕES
   ========================================================================= */
.page-servicos :where(.services-feature-head,.services-process-head){
  display:grid!important;
  grid-template-columns:1fr!important;
  justify-items:center!important;
  width:100%!important;
  margin-bottom:clamp(38px,5vw,62px)!important;
  text-align:center!important;
}
.page-servicos :where(.services-feature-head,.services-process-head) .sec-head-main{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  width:100%!important;
  max-width:930px!important;
  margin-inline:auto!important;
  text-align:center!important;
}
.page-servicos :where(.services-feature-head,.services-process-head) h2{
  max-width:900px!important;
  margin:0 auto!important;
  font-size:clamp(2.25rem,4.4vw,4.4rem)!important;
  line-height:1.02!important;
  text-align:center!important;
  text-wrap:balance;
}
.page-servicos :where(.services-feature-head,.services-process-head) p{
  max-width:760px!important;
  margin:18px auto 0!important;
  font-size:clamp(1rem,1.25vw,1.14rem)!important;
  line-height:1.72!important;
  text-align:center!important;
  text-wrap:pretty;
}
.page-servicos .services-head-rule{display:none!important}
.page-servicos .section-service-process .services-process-head p{color:rgba(255,255,255,.72)!important}

/* =========================================================================
   ONDE A FERRAGEM FAZ DIFERENÇA — cards elaborados e interativos
   ========================================================================= */
.feat-grid-3{grid-template-columns:repeat(3,1fr)}
.page-servicos .services-application-grid{gap:clamp(18px,2.2vw,28px)!important}
.page-servicos .services-feature-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:330px!important;
  padding:clamp(30px,3.2vw,42px)!important;
  border:1px solid rgba(5,7,12,.1)!important;
  border-radius:28px!important;
  background:linear-gradient(155deg,#fff 0%,#fbfbf8 100%)!important;
  box-shadow:0 16px 45px rgba(5,7,12,.07)!important;
  text-align:center!important;
  transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease!important;
}
.page-servicos .services-feature-card::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  top:-90px!important;
  right:-90px!important;
  width:210px!important;
  height:210px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(245,196,0,.2),rgba(245,196,0,0) 68%)!important;
  transform:scale(.85)!important;
  transition:transform .38s ease!important;
}
.page-servicos .services-feature-card:hover{
  transform:translateY(-10px)!important;
  border-color:rgba(245,196,0,.62)!important;
  box-shadow:0 28px 72px rgba(5,7,12,.14)!important;
}
.page-servicos .services-feature-card:hover::before{transform:scale(1.25)!important}
.page-servicos .services-feature-icon{
  display:grid!important;
  place-items:center!important;
  width:76px!important;
  height:76px!important;
  margin:0 auto 24px!important;
  border:1px solid rgba(245,196,0,.34)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,var(--services-yellow),#ffd84e)!important;
  color:var(--services-black)!important;
  box-shadow:0 14px 32px rgba(245,196,0,.24)!important;
  transform:rotate(-2deg)!important;
  transition:transform .32s ease!important;
}
.page-servicos .services-feature-icon svg{width:36px!important;height:36px!important}
.page-servicos .services-feature-card:hover .services-feature-icon{transform:rotate(4deg) scale(1.08)!important}
.page-servicos .services-feature-card h3{
  max-width:18ch!important;
  margin:0 auto 14px!important;
  font-size:clamp(1.55rem,2vw,2rem)!important;
  line-height:1.1!important;
  text-align:center!important;
}
.page-servicos .services-feature-card p{
  max-width:34ch!important;
  margin:0 auto!important;
  color:var(--steel-2)!important;
  line-height:1.7!important;
  text-align:center!important;
}
.page-servicos .services-card-accent{
  width:42px!important;
  height:3px!important;
  margin-top:auto!important;
  padding-top:26px!important;
  border-bottom:3px solid var(--services-yellow)!important;
  transition:width .32s ease!important;
}
.page-servicos .services-feature-card:hover .services-card-accent{width:86px!important}

/* =========================================================================
   PROCESSO — cards mais simples e leves
   ========================================================================= */
.page-servicos .section-service-process{
  position:relative!important;
  overflow:hidden!important;
}
.page-servicos .services-process-grid{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(14px,1.8vw,20px)!important;
}
.page-servicos .services-process-grid::before{display:none!important}
.page-servicos .services-process-card{
  position:relative!important;
  z-index:1!important;
  overflow:hidden!important;
  min-height:235px!important;
  padding:28px 22px 24px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.065)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.14)!important;
  text-align:center!important;
  transition:transform .24s ease,border-color .24s ease,background .24s ease,box-shadow .24s ease!important;
}
.page-servicos .services-process-card::after{display:none!important}
.page-servicos .services-process-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(245,196,0,.48)!important;
  background:rgba(255,255,255,.09)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.2)!important;
}
.page-servicos .services-step-number{
  position:absolute!important;
  top:16px!important;
  right:17px!important;
  color:rgba(255,255,255,.17)!important;
  font:700 1.55rem/1 var(--services-heading-font)!important;
  letter-spacing:-.04em!important;
}
.page-servicos .services-step-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  margin:0 auto 20px!important;
  border-radius:16px!important;
  background:var(--services-yellow)!important;
  color:var(--services-black)!important;
  box-shadow:0 9px 20px rgba(0,0,0,.18)!important;
  transition:transform .24s ease!important;
}
.page-servicos .services-step-icon svg{width:24px!important;height:24px!important}
.page-servicos .services-process-card:hover .services-step-icon{transform:translateY(-2px) scale(1.04)!important}
.page-servicos .services-process-card h3{
  margin:0 auto 11px!important;
  color:#fff!important;
  font-size:clamp(1.3rem,1.55vw,1.55rem)!important;
  line-height:1.1!important;
  text-align:center!important;
}
.page-servicos .services-process-card p{
  max-width:29ch!important;
  margin:0 auto!important;
  color:rgba(255,255,255,.7)!important;
  font-size:.94rem!important;
  line-height:1.6!important;
  text-align:center!important;
}

/* =========================================================================
   FORMULÁRIO — dimensões compactas iguais às da Home
   ========================================================================= */
.page-servicos .section-contact-final{
  position:relative!important;
  padding-top:clamp(56px,6vw,76px)!important;
  padding-bottom:clamp(56px,6vw,76px)!important;
  background:#f7f7f4!important;
}
.page-servicos .section-contact-final > .container{width:min(1380px,calc(100% - var(--gutter)*2))!important}
.page-servicos .inline-contact-wrap{
  width:100%!important;
  max-width:1320px!important;
  margin:0 auto!important;
}
.page-servicos .contact-showcase{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(300px,340px) minmax(0,1fr)!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:1320px!important;
  margin-inline:auto!important;
  min-height:0!important;
  border:1px solid rgba(5,7,12,.1)!important;
  border-top:5px solid var(--services-yellow)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 22px 60px rgba(5,7,12,.11)!important;
}
.page-servicos .contact-showcase-intro{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:clamp(38px,3.5vw,50px) clamp(30px,3vw,42px)!important;
  background:linear-gradient(150deg,var(--services-black),var(--services-black-soft))!important;
  color:#fff!important;
  text-align:left!important;
}
.page-servicos .contact-showcase-intro::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:0!important;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 28px),radial-gradient(circle at 0 0,rgba(245,196,0,.16),transparent 34%)!important;
}
.page-servicos .contact-showcase-rule{
  display:block!important;
  width:54px!important;
  height:3px!important;
  margin:0 0 22px!important;
  background:var(--services-yellow)!important;
}
.page-servicos .contact-showcase-intro h2{
  max-width:12ch!important;
  margin:0 0 18px!important;
  color:#fff!important;
  font-size:clamp(2.2rem,3.4vw,3.3rem)!important;
  line-height:1.02!important;
  letter-spacing:-.025em!important;
  text-align:left!important;
  text-wrap:balance;
}
.page-servicos .contact-showcase-accent{
  max-width:32ch!important;
  margin:0 0 14px!important;
  color:var(--services-yellow)!important;
  font-size:.98rem!important;
  line-height:1.55!important;
  text-align:left!important;
}
.page-servicos .contact-showcase-copy{
  max-width:35ch!important;
  margin:0!important;
  color:rgba(255,255,255,.82)!important;
  font-size:.94rem!important;
  line-height:1.68!important;
  text-align:left!important;
}
.page-servicos .contact-showcase-form{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  padding:clamp(28px,3.3vw,42px)!important;
  background:var(--services-paper)!important;
}
.page-servicos .home-contact-form{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.page-servicos .home-contact-form .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
.page-servicos .home-contact-form .field{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  text-align:left!important;
}
.page-servicos .home-contact-form .field.full{grid-column:1/-1!important}
.page-servicos .home-contact-form .field label{
  display:block!important;
  margin:0!important;
  color:#28313c!important;
  font-family:Manrope,Arial,sans-serif!important;
  font-size:.82rem!important;
  font-weight:700!important;
  line-height:1.3!important;
  text-align:left!important;
}
.page-servicos .home-contact-form .req{color:#a57f00!important}
.page-servicos .home-contact-form .field :where(input,select,textarea){
  display:block!important;
  width:100%!important;
  margin:0!important;
  border:1px solid #d6dbe2!important;
  border-radius:10px!important;
  outline:0!important;
  background:#fff!important;
  color:#111827!important;
  font-family:inherit!important;
  font-size:.94rem!important;
  line-height:1.4!important;
  text-align:left!important;
  box-shadow:none!important;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important;
}
.page-servicos .home-contact-form .field :where(input,select){
  min-height:46px!important;
  padding:0 16px!important;
}
.page-servicos .home-contact-form .field textarea{
  min-height:112px!important;
  padding:15px 16px!important;
  resize:vertical!important;
}
.page-servicos .home-contact-form .field :where(input,textarea)::placeholder{color:#9aa3b5!important;opacity:1!important}
.page-servicos .home-contact-form .field :where(input,select,textarea):focus{
  border-color:var(--services-yellow-deep)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(245,196,0,.16)!important;
}
.page-servicos .home-contact-actions{
  display:flex!important;
  justify-content:flex-start!important;
  width:100%!important;
  margin:22px 0 0!important;
}
.page-servicos .home-contact-actions .btn{
  min-width:190px!important;
  min-height:48px!important;
  padding:0 28px!important;
  border-radius:999px!important;
  font-size:.94rem!important;
}
.page-servicos .inline-contact-hint{
  margin:16px 0 0!important;
  color:#626b76!important;
  font-size:.78rem!important;
  line-height:1.5!important;
  text-align:left!important;
}
.page-servicos .home-contact-form .form-feedback{
  min-height:22px!important;
  margin:10px 0 0!important;
  font-size:.86rem!important;
  line-height:1.45!important;
  text-align:left!important;
}
.page-servicos .home-contact-form .form-feedback.is-ok{color:#166534!important}
.page-servicos .home-contact-form .form-feedback.is-error{color:#b42318!important}
.page-servicos .home-form-trap,
.page-servicos .home-contact-sink{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Modal de confirmação do formulário. */
.page-servicos .home-success-modal{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:grid!important;
  place-items:center!important;
  padding:22px!important;
  background:rgba(5,7,12,.74)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .2s ease,visibility .2s ease!important;
}
.page-servicos .home-success-modal.is-visible{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.page-servicos .home-success-dialog{
  position:relative!important;
  width:min(100%,460px)!important;
  padding:40px 34px 34px!important;
  border-top:5px solid var(--services-yellow)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(0,0,0,.34)!important;
  text-align:center!important;
}
.page-servicos .home-success-close{
  position:absolute!important;
  top:12px!important;
  right:14px!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#f1f2f3!important;
  color:#111827!important;
  font:400 1.65rem/1 Arial,sans-serif!important;
  cursor:pointer!important;
}
.page-servicos .home-success-icon{
  display:grid!important;
  place-items:center!important;
  width:64px!important;
  height:64px!important;
  margin:0 auto 20px!important;
  border-radius:50%!important;
  background:var(--services-yellow)!important;
  color:var(--services-black)!important;
  font:700 2rem/1 Arial,sans-serif!important;
}
.page-servicos .home-success-dialog h3{margin:0 0 12px!important;color:var(--services-black)!important;font-size:clamp(1.75rem,4vw,2.15rem)!important;text-align:center!important}
.page-servicos .home-success-dialog p{max-width:36ch!important;margin:0 auto 24px!important;color:#56606c!important;line-height:1.65!important;text-align:center!important}
.page-servicos .home-success-button{min-width:160px!important}
body.home-modal-open{overflow:hidden!important}

/* =========================================================================
   RESPONSIVIDADE
   ========================================================================= */
@media (max-width:1080px){
  .feat-grid-3{grid-template-columns:1fr 1fr}
  .page-servicos .services-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page-servicos .services-process-grid::before{display:none!important}
  .page-servicos .contact-showcase{grid-template-columns:minmax(280px,320px) minmax(0,1fr)!important}
}
@media (max-width:900px){
  .svc-detail{grid-template-columns:1fr}
  .page-servicos .svc-detail--image-left .svc-detail-media,
  .page-servicos .svc-detail--image-right .svc-detail-media{order:0}
  .page-servicos .svc-detail--image-left .svc-detail-body,
  .page-servicos .svc-detail--image-right .svc-detail-body{order:1}
  .page-servicos .contact-showcase{grid-template-columns:1fr!important;min-height:0!important}
  .page-servicos .contact-showcase-intro{align-items:center!important;padding:36px 28px!important;text-align:center!important}
  .page-servicos .contact-showcase-rule{margin-inline:auto!important}
  .page-servicos .contact-showcase-intro :where(h2,.contact-showcase-accent,.contact-showcase-copy){max-width:650px!important;text-align:center!important}
  .page-servicos .contact-showcase-intro h2{font-size:clamp(2.3rem,8vw,3.3rem)!important}
}
@media (max-width:720px){
  .feat-grid-3{grid-template-columns:1fr}
  .page-servicos .services-process-grid{grid-template-columns:1fr!important}
  .page-servicos .phero h1{max-width:100%!important}
  .page-servicos .phero .actions{flex-direction:column!important}
  .page-servicos .phero .actions .btn{width:min(100%,360px)!important}
  .page-servicos .services-feature-card,.page-servicos .services-process-card{min-height:0!important}
  .page-servicos .section-contact-final > .container{width:min(1380px,calc(100% - var(--gutter)*2))!important}
  .page-servicos .contact-showcase{border-radius:20px!important}
  .page-servicos .contact-showcase-form{padding:24px 18px!important}
  .page-servicos .home-contact-form .form-grid{grid-template-columns:1fr!important;gap:18px!important}
  .page-servicos .home-contact-form .field.full{grid-column:auto!important}
  .page-servicos .home-contact-actions .btn{width:100%!important;min-width:0!important}
}
@media (prefers-reduced-motion:reduce){
  .page-servicos .services-feature-card,
  .page-servicos .services-feature-icon,
  .page-servicos .services-card-accent,
  .page-servicos .services-process-card,
  .page-servicos .services-step-icon{transition:none!important}
  .page-servicos .services-feature-card:hover,
  .page-servicos .services-process-card:hover{transform:none!important}
}

/* AJUSTE FINAL — largura do formulário exatamente igual à Home */
html body.page-servicos.uses-home-contact .section-contact-final > .container {
  width: min(1380px, calc(100% - var(--gutter) * 2)) !important;
}

html body.page-servicos.uses-home-contact .section-contact-final .inline-contact-wrap.shared-home-contact {
  width: 100% !important;
  max-width: 1320px !important;
  margin-inline: auto !important;
}

html body.page-servicos.uses-home-contact .section-contact-final .inline-contact-wrap.shared-home-contact > .contact-showcase {
  width: 100% !important;
  max-width: 1320px !important;
  margin-inline: auto !important;
}

