/* MartinsCode v24 — padrão visual claro e unificado */
:root{
  --mc-v24-ink:#171522;
  --mc-v24-copy:#686879;
  --mc-v24-muted:#777384;
  --mc-v24-bg:#f8f7fb;
  --mc-v24-surface:#fff;
}

body:not(.portal-body){background:var(--mc-v24-bg)!important;color:var(--mc-v24-ink)!important}

/* Cabeçalho integrado: sem moldura em volta do menu. */
#header,#header.compact{border:0!important;box-shadow:0 10px 35px rgba(35,25,55,.045)!important}
#header:after{display:none!important}
@media(min-width:1121px){
  #header nav{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  #header nav a{font-size:15px!important;color:#4d4854!important}
  #header nav a:hover{color:#17121e!important;background:rgba(108,55,235,.06)!important}
  #header nav a.active{color:#fff!important}
}
@media(max-width:1120px){
  #header nav{border:0!important;box-shadow:0 22px 60px rgba(28,20,45,.14)!important}
  #header .menu{border:0!important}
}

/* Páginas internas com o mesmo fundo e a mesma escala da home. */
.page-hero,.contact-intro,.sites-hero{
  min-height:clamp(440px,55vh,620px)!important;
  padding-top:clamp(92px,9vw,138px)!important;
  padding-bottom:clamp(78px,8vw,120px)!important;
  border:0!important;
  background:linear-gradient(128deg,#fbfaff 0%,#f7f5fb 58%,#f0ebfa 100%)!important;
  align-content:center;
}
.page-hero h1,.contact-intro h1,.sites-hero h1{
  width:min(100%,1080px)!important;
  max-width:1080px!important;
  color:var(--mc-v24-ink)!important;
  font-size:clamp(52px,5vw,76px)!important;
  line-height:1.04!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
.page-hero p,.contact-intro p,.sites-hero p{
  color:var(--mc-v24-copy)!important;
  font-size:clamp(16px,1.25vw,18px)!important;
}

body:not(.portal-body)>main:not(.studio-home)>.content,
body:not(.portal-body)>main:not(.studio-home)>.section{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body:not(.portal-body)>main:not(.studio-home)>.content:before{display:none!important}
body:not(.portal-body)>main:not(.studio-home) :is(.content,.section) p,
body:not(.portal-body)>main:not(.studio-home) :is(.content,.section) li{color:var(--mc-v24-copy)!important}
body:not(.portal-body)>main:not(.studio-home) :is(.content,.section) h2,
body:not(.portal-body)>main:not(.studio-home) :is(.content,.section) h3{color:var(--mc-v24-ink)!important}

/* Superfícies sem contornos pesados. Os campos continuam delimitados por usabilidade. */
main:not(.studio-home) :is(.glass-card,.plan,.form-card,.contact-sidebar,.contact-form,.sites-hero-meta){
  border:0!important;
  box-shadow:0 18px 55px rgba(45,29,76,.055)!important;
}
main:not(.studio-home) :is(.glass-card,.plan,.form-card,.contact-sidebar,.contact-form){background:#fff!important}

/* Portfólio em composição aberta, alinhado ao restante do site. */
.sites-page{background:var(--mc-v24-bg)!important}
.sites-page .sites-showcase{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(38px,4vw,66px)!important;
  max-width:1440px!important;
  padding-top:clamp(58px,6vw,92px)!important;
  padding-bottom:clamp(75px,8vw,120px)!important;
}
.sites-page .showcase-project,.sites-page .showcase-project:nth-child(even){
  display:flex!important;
  min-height:0!important;
  padding:0!important;
  gap:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.sites-page .showcase-project:nth-child(even) .showcase-copy,
.sites-page .showcase-project:nth-child(even) .project-browser{order:initial!important}
.sites-page .project-browser{
  max-width:none!important;
  border:0!important;
  border-radius:20px!important;
  box-shadow:0 26px 65px rgba(26,18,38,.18)!important;
}
.sites-page .browser-bar{border-bottom:0!important}
.sites-page .showcase-copy,.sites-page .showcase-project:nth-child(even) .showcase-copy{
  width:100%!important;
  padding:28px 6px 4px!important;
}
.sites-page .showcase-copy h2{color:var(--mc-v24-ink)!important}
.sites-page .showcase-copy>p{color:var(--mc-v24-copy)!important;font-size:15px!important}
.sites-page .showcase-actions .text-link{color:#6336d6!important}
.sites-page .sites-note{border:0!important;box-shadow:0 28px 75px rgba(74,40,215,.2)!important}

/* Nova apresentação visual dos projetos, alinhada à paleta clara do template. */
.hero-project-image{
  display:block;
  width:100%;
  height:415px;
  object-fit:cover;
  object-position:center;
}
.sites-page .project-template-cover{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}

@media(max-width:900px){
  .sites-page .sites-showcase{grid-template-columns:1fr!important;max-width:760px!important}
  .page-hero h1,.contact-intro h1,.sites-hero h1{font-size:clamp(46px,8vw,64px)!important}
}
@media(max-width:620px){
  .page-hero,.contact-intro,.sites-hero{min-height:auto!important;padding-top:78px!important;padding-bottom:62px!important}
  .page-hero h1,.contact-intro h1,.sites-hero h1{font-size:clamp(40px,12vw,54px)!important;line-height:1.02!important}
  .sites-page .sites-showcase{gap:48px!important;padding-inline:20px!important}
  .sites-page .showcase-copy,.sites-page .showcase-project:nth-child(even) .showcase-copy{padding:23px 2px 0!important}
  .sites-page .project-browser{border-radius:15px!important}
  .hero-project-image{height:280px}
}
