/* SOL Engenharia: sistema visual "Prancha viva"
   Tokens, tipografia, botões, cabeçalhos de seção e cartões de serviço.
   Carregado depois dos estilos da página para substituir os padrões antigos. */

@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/barlow-semi-condensed-600.woff2") format("woff2")}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/barlow-semi-condensed-700.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-400.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/source-sans-3-600.woff2") format("woff2")}

:root{
  --sol-petrol-900:#0d3340;--sol-petrol-700:#134b5f;--sol-petrol-500:#1a6480;
  --sol-gold-500:#d4a017;--sol-gold-300:#e8b92a;--sol-gold-700:#b8860b;--sol-gold-text:#9a6f00;
  --sol-white:#fff;--sol-gray-050:#f9fafb;--sol-gray-200:#e5e7eb;--sol-gray-500:#6b7280;--sol-gray-600:#4b5563;--sol-gray-900:#111827;

  --color-heading:var(--sol-petrol-900);--color-text:var(--sol-gray-900);--color-text-muted:var(--sol-gray-600);
  --color-accent:var(--sol-gold-500);--color-accent-hover:var(--sol-gold-300);--color-accent-active:var(--sol-gold-700);--color-on-accent:var(--sol-petrol-900);
  --color-border:var(--sol-gray-200);--color-border-control:var(--sol-gray-500);
  --color-success:#166534;--color-success-bg:#f0fdf4;--color-error:#b42318;--color-error-bg:#fef3f2;

  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;
  --radius-sm:2px;--radius-md:6px;--radius-lg:12px;
  --shadow-1:0 1px 3px rgb(13 51 64/8%);--shadow-2:0 4px 12px rgb(13 51 64/10%);--shadow-3:0 12px 32px rgb(13 51 64/14%);
  --touch-min:2.75rem;--control-height:3rem;

  --font-heading:"Barlow Semi Condensed","Arial Narrow",Arial,sans-serif;
  --font-body:"Source Sans 3","Segoe UI",Arial,sans-serif;
  --text-intro:1.125rem;--leading-intro:1.75rem;
  --text-h2:1.875rem;--leading-h2:2.25rem;
  --text-h3:1.5rem;--leading-h3:1.75rem;
  --text-h1:2.25rem;--leading-h1:2.5rem;

  --focus-outline:#0d3340;--focus-halo:#fff;
}
@media (min-width:64rem){
  :root{--text-intro:1.25rem;--leading-intro:1.875rem;--text-h2:2.75rem;--leading-h2:3rem;--text-h3:1.75rem;--leading-h3:2rem;--text-h1:4rem;--leading-h1:4.25rem}
}

/* Tipografia */
body,button,input,select,textarea{font-family:var(--font-body)}
body{font-size:1.125rem;line-height:1.556}
h1,h2,h3,h4,h5,h6,.hero-title,.section-title,.servico-title,.segmento-title,.diferencial-title,.footer-title,.orc-title,.stat-number,.norma-number,.logo-name,.instagram-avatar{font-family:var(--font-heading);letter-spacing:normal}
h1,.hero-title{font-weight:700;font-size:clamp(2.25rem,1.5rem + 3vw,4rem);line-height:1.11;text-wrap:balance}
.section-title{font-weight:600;font-size:var(--text-h2);line-height:var(--leading-h2);color:var(--color-heading);text-wrap:balance}
.servico-title{font-weight:600;font-size:1.375rem;line-height:1.25;color:var(--color-heading)}
.section-subtitle{font-size:var(--text-intro);line-height:var(--leading-intro);color:var(--color-text-muted)}

/* Foco visível em duas camadas */
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--focus-outline);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-halo);border-radius:var(--radius-md)}

/* Botões */
.btn{min-height:var(--control-height);padding:12px 24px;border-radius:var(--radius-md);font-family:var(--font-body);font-size:1rem;line-height:1.5;font-weight:600;letter-spacing:normal;animation:none!important}
.btn::before,.btn::after{display:none!important}
.btn-primary{background:var(--color-accent);color:var(--color-on-accent);border:1px solid transparent;box-shadow:none;animation:none!important}
.btn-primary:hover{background:var(--color-accent-hover);color:var(--color-on-accent);box-shadow:none;transform:none}
.btn-primary:active{background:var(--color-accent-active)}
.btn-primary:disabled,.btn-primary[disabled]{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}
.btn-outline-petrol{background:transparent;color:var(--sol-petrol-900);border:1px solid var(--sol-petrol-700);box-shadow:none}
.btn-outline-petrol:hover{background:var(--sol-gray-050);color:var(--sol-petrol-900)}
.btn-outline-petrol:active{background:var(--color-border)}
.btn-secondary{background:transparent;color:#fff;border:1px solid #fff;box-shadow:none}
.btn-secondary:hover{background:#fff;color:var(--sol-petrol-900)}
.btn-whatsapp{background:#0f7a43;color:#fff;border:1px solid transparent;box-shadow:none}
.btn-whatsapp:hover{background:#0b6236}
@media (max-width:640px){.hero-buttons .btn,.cta-buttons .btn,.orc-submit{width:100%;justify-content:center}.hero-buttons,.cta-buttons{gap:12px}}

/* Cabeçalho de seção: eyebrow e linha de referência */
.section-header{text-align:left;margin-bottom:var(--space-6)}
@media (min-width:48rem){.section-header{margin-bottom:var(--space-7)}}
.section-header [class$="-eyebrow"]{display:inline;margin:0;padding:0;border:0;background:none;box-shadow:none;border-radius:0;font-family:var(--font-body);font-size:.875rem;line-height:1.25rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sol-petrol-700)}
.section-header [class$="-eyebrow"]::before,.section-header [class$="-eyebrow"]::after{display:none}
.section-header .section-title{margin:12px 0 0}
.section-header .section-title::after{content:"";display:block;width:80px;height:7px;margin:16px 0 0;color:var(--sol-petrol-700);background:
  linear-gradient(currentColor,currentColor) left center/1px 7px no-repeat,
  linear-gradient(currentColor,currentColor) right center/1px 7px no-repeat,
  linear-gradient(currentColor,currentColor) center/100% 1px no-repeat}
@media (min-width:64rem){.section-header .section-title::after{width:120px}}
.section-header .section-subtitle{margin:0;max-width:48ch}
.section-title .highlight{color:inherit;text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:2px;text-underline-offset:.14em}
.instagram .section-header [class$="-eyebrow"]{color:var(--color-accent)}
.instagram .section-title,.instagram .section-subtitle{color:#fff}
.instagram .section-title::after{color:var(--color-accent)}

/* Cartão de serviço: borda e fundo, alinhado à esquerda, sem sombra permanente */
.servico-card{align-items:flex-start;justify-content:flex-start;text-align:left;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:none;padding:var(--space-5);transition:border-color 200ms cubic-bezier(.2,0,0,1)}
.servico-card::before{display:none}
.servico-card:hover{border-color:var(--sol-petrol-700);box-shadow:none;transform:none}
.servico-card .servico-icon{width:auto;height:auto;padding:0;margin:0 0 var(--space-4);display:block;background:none;border:0;box-shadow:none}
.servico-card .servico-title{margin:0 0 var(--space-2)}
.servico-card .servico-desc{font-size:1.0625rem;line-height:1.6;color:var(--color-text-muted)}
.servico-card-link{margin-top:var(--space-4);color:var(--sol-petrol-700);font-weight:600;text-decoration:underline;text-underline-offset:.2em}
@media (min-width:48rem){.servico-card{padding:var(--space-6)}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Fundo liso no lugar do padrão de capacetes e engrenagens */
.diferenciais{background:var(--sol-gray-050)!important}
