/* Site Metalseg, visual C "Aço" (grafite + amarelo, Inter Tight).
   O conteúdo das páginas vem do canvas de design com estilos inline; este arquivo cuida da base,
   do cabeçalho, do rodapé e da adaptação para tablet e celular (regras com !important por cima dos estilos inline). */

@font-face { font-family: 'Inter Tight'; font-style: normal; font-weight: 300 700; font-display: swap; src: url(../fonts/inter-tight-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Inter Tight'; font-style: normal; font-weight: 300 700; font-display: swap; src: url(../fonts/inter-tight-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: #16181B; color: #B9BDC3; font-family: 'Inter Tight', Arial, sans-serif; font-size: 18px; line-height: 1.65; }
a { color: #F1C400; }
img { max-width: 100%; }
details summary { cursor: pointer; list-style: none; }
details summary::-webkit-details-marker { display: none; }
details summary > span[aria-hidden] { transition: transform .2s ease; }
details[open] summary > span[aria-hidden] { transform: rotate(45deg); }
a[style*="border-radius: 999px"] { transition: filter .15s ease, background-color .15s ease; }
a[style*="border-radius: 999px"]:hover { filter: brightness(1.08); }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid #F1C400; outline-offset: 3px; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 16px; top: -60px; z-index: 200; padding: 10px 16px; border-radius: 6px; background: #F1C400; color: #111; font-weight: 700; text-decoration: none; }
.skip-link:focus { top: 16px; }
.page { width: 100%; overflow-x: clip; }

/* Cabeçalho (fica sobre a foto do topo de cada página) */
.site-header { position: relative; z-index: 20; }
.header-inner { max-width: 1360px; margin: 0 auto; padding: 28px 40px; display: flex; align-items: center; gap: 24px; }
.brand { display: block; flex: none; }
.brand img { height: 52px; width: auto; display: block; }
.main-nav { margin-left: auto; }
.main-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 30px; font-weight: 500; font-size: 15px; }
.main-nav a { color: #FFFFFF; text-decoration: none; }
.main-nav a:hover, .main-nav a[aria-current="page"] { color: #F1C400; }
.menu-toggle { display: none; }

/* Rodapé */
.site-footer { background: #0E1012; border-top: 1px solid #2A2D32; }
.footer-inner { max-width: 1360px; margin: 0 auto; padding: 56px 40px 40px; display: flex; flex-wrap: wrap; gap: 40px; justify-content: space-between; font-size: 15px; color: #8E939A; }
.footer-brand { flex: 1 1 260px; }
.footer-brand img { height: 56px; width: auto; display: block; margin-bottom: 14px; }
.footer-brand p, .footer-col ul { margin: 0; }
.footer-col { flex: 1 1 160px; }
.footer-contact { flex: 1 1 260px; }
.footer-title { margin: 0 0 6px; color: #FFFFFF; font-weight: 600; }
.footer-col ul { list-style: none; padding: 0; }
.footer-col a { color: #8E939A; text-decoration: none; }
.footer-col a:hover { color: #FFFFFF; }
.copyright { margin: 0; padding: 20px 40px; text-align: center; font-size: 14px; color: #7A7F86; border-top: 1px solid #1F2226; }

/* Botão flutuante do WhatsApp */
.wa-float { position: fixed; right: 20px; bottom: 20px; z-index: 50; width: 58px; height: 58px; border-radius: 50%; background: #25A666; color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 28px rgba(0,0,0,.45); }
.wa-float svg { width: 30px; height: 30px; fill: currentColor; }
.wa-float:hover { filter: brightness(1.08); }

/* Conteúdo só para um tamanho de tela (para os ajustes finos) */
@media (min-width: 761px) { .so-celular { display: none !important; } }
@media (max-width: 760px) { .so-desktop { display: none !important; } }

/* ---------- Tablet e notebook pequeno ---------- */
@media (max-width: 1100px) {
  .menu-toggle { display: inline-flex; flex-direction: column; justify-content: center; gap: 5px; margin-left: auto; width: 48px; height: 48px; padding: 0 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 10px; background: rgba(14,16,18,.55); cursor: pointer; position: relative; z-index: 101; }
  .menu-toggle .bar { display: block; height: 2px; background: #fff; border-radius: 2px; transition: transform .2s ease, opacity .2s ease; }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(2) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(3) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(4) { transform: translateY(-7px) rotate(-45deg); }
  .main-nav { position: fixed; inset: 0; z-index: 100; margin: 0; padding: 112px 28px 40px; background: #0E1012; overflow-y: auto; visibility: hidden; opacity: 0; transition: opacity .2s ease, visibility .2s; }
  .main-nav.is-open { visibility: visible; opacity: 1; }
  .main-nav ul { flex-direction: column; gap: 0; font-size: 24px; font-weight: 600; }
  .main-nav li { border-bottom: 1px solid #2A2D32; }
  .main-nav a { display: block; padding: 18px 0; }
  body.menu-open { overflow: hidden; }

  [style*="font-size: 150px"] { font-size: 120px !important; }
  [style*="font-size: 72px"], [style*="font-size: 68px"] { font-size: 56px !important; }
  h2[style*="font-size: 104px"] { font-size: 76px !important; }
  [style*="font-size: 60px"], [style*="font-size: 56px"] { font-size: 48px !important; }
}

/* ---------- Celular ---------- */
@media (max-width: 760px) {
  body { font-size: 17px; }
  .header-inner { padding: 18px 20px; }
  .brand img { height: 42px; }
  .footer-inner { padding: 48px 20px 32px; gap: 28px; }
  .copyright { padding: 18px 20px 88px; }
  .wa-float { right: 16px; bottom: 16px; width: 54px; height: 54px; }

  /* Títulos */
  [style*="font-size: 150px"] { font-size: 88px !important; }
  [style*="font-size: 117px"] { font-size: 76px !important; }
  [style*="font-size: 104px"] { font-size: 64px !important; }
  h2[style*="font-size: 104px"] { font-size: 46px !important; line-height: 1.04 !important; }
  [style*="font-size: 72px"], [style*="font-size: 68px"] { font-size: 38px !important; line-height: 1.08 !important; }
  [style*="font-size: 64px"] { font-size: 44px !important; }
  [style*="font-size: 60px"], [style*="font-size: 56px"] { font-size: 34px !important; line-height: 1.08 !important; }
  [style*="font-size: 52px"] { font-size: 32px !important; line-height: 1.1 !important; }
  [style*="font-size: 46px"], [style*="font-size: 44px"] { font-size: 30px !important; line-height: 1.1 !important; }
  [style*="font-size: 40px"] { font-size: 27px !important; }
  [style*="font-size: 32px"] { font-size: 26px !important; }
  [style*="font-size: 26px"] { font-size: 22px !important; }
  [style*="font-size: 20px"], [style*="font-size: 21px"], [style*="font-size: 22px"] { font-size: 18px !important; }

  /* Margens laterais e espaçamento entre seções */
  [style*="max-width: 1360px"], [style*="max-width: 1280px"] { padding-left: 20px !important; padding-right: 20px !important; }
  [style*="padding: 128px 40px"], [style*="padding: 136px 40px"] { padding-top: 72px !important; padding-bottom: 72px !important; }
  [style*="padding: 128px 40px 0"] { padding-bottom: 0 !important; }
  [style*="padding: 112px 40px"], [style*="padding: 96px 40px"] { padding-top: 64px !important; padding-bottom: 64px !important; }
  section[style*="padding: 112px 40px"] { padding: 48px 16px !important; }
  [style*="padding: 72px 56px"] { padding: 36px 22px !important; gap: 28px !important; }
  [style*="padding: 0 40px 80px"] { padding-bottom: 48px !important; }
  [style*="padding: 44px 40px"] { padding: 30px 22px !important; }
  [style*="padding: 40px 32px 36px"] { padding: 30px 22px 26px !important; }
  [style*="padding: 28px 32px"] { padding: 20px !important; gap: 16px !important; }
  [style*="padding: 96px 40px; border-radius"] { padding: 56px 20px !important; }
  [style*="margin-bottom: 88px"] { margin-bottom: 48px !important; }
  [style*="margin-bottom: 64px"] { margin-bottom: 40px !important; }
  [style*="gap: 64px"], [style*="gap: 48px 64px"], [style*="gap: 56px 80px"], [style*="gap: 32px 80px"], [style*="gap: 40px 72px"] { gap: 36px !important; }

  /* Topo das páginas */
  .hero { min-height: 0 !important; }
  .hero > div[style*="margin-top: auto"] { padding-top: 120px !important; }

  /* Colunas viram uma só */
  [style*="minmax(260px"], [style*="minmax(280px"]:not(.gallery), [style*="minmax(320px"]:not(.gallery),
  [style*="minmax(340px"], [style*="minmax(360px"], [style*="minmax(420px"], [style*="minmax(440px"] { grid-template-columns: 1fr !important; }
  article[style*="border-right"] { border-right: 0 !important; padding: 44px 0 8px !important; }
  article[style*="border-right"] > div[style*="left: 40px"], article > div[style*="left: 40px"] { left: 0 !important; }

  /* Fotos com altura fixa ficam mais baixas */
  img[style*="height: 600px"], img[style*="height: 520px"] { height: 300px !important; }

  /* Galerias: 2 por linha, a última ocupa a linha toda se sobrar */
  .gallery { grid-template-columns: 1fr 1fr !important; }
  .gallery img { height: 190px !important; }
  .gallery img:last-child:nth-child(odd) { grid-column: 1 / -1; }

  /* Logos de clientes: 3 por linha */
  .logos { grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; width: auto !important; }
  .logos li { height: 64px !important; padding: 8px !important; }

  /* Botões: largura confortável para o dedo */
  a[style*="width: 285px"] { box-sizing: border-box; width: 100% !important; max-width: 340px; height: auto !important; min-height: 56px !important; font-size: 19px !important; justify-content: center; }
  a[style*="display: inline-flex"][style*="border-radius: 999px"] { justify-content: center; }

  /* Cartão "Fale com um Especialista" */
  div[style*="padding: 28px; border-radius: 8px"] { padding: 22px 18px !important; }
  a[style*="justify-content: center"][style*="border-radius: 999px"] { text-align: center; font-size: 15.5px !important; padding: 6px 14px !important; }

  /* Selo de garantia: ícone e texto lado a lado */
  div[style*="padding: 26px 34px"] + div { flex: 1 1 0 !important; width: auto !important; padding: 20px !important; gap: 8px !important; }
  div[style*="padding: 26px 34px"] { padding: 18px !important; }
  div[style*="padding: 26px 34px"] svg { width: 48px !important; height: 44px !important; }
}
body.menu-open .wa-float { display: none; }
