:root{
  --sng-navy-900:#080d24;
  --sng-navy-800:#0d1638;
  --sng-navy-700:#131f4d;
  --sng-orange:#f5730c;
  --sng-orange-dark:#d9600a;
  --sng-orange-soft:#fff1e4;
  --sng-ink:#131a33;
  --sng-body:#5b647a;
  --sng-bg-soft:#f4f6fb;
  --sng-bg-soft-2:#eef1f7;
  --sng-border:#e3e7f0;
}

/* Tipografia aplicada só dentro das áreas construídas por nós
   (header, footer, home) pra não sobrescrever o CSS do Elementor
   nas outras páginas. */
.sng-header, .sng-footer, .sng-home{
  font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,sans-serif;
}
.sng-wrap{max-width:1200px;margin:0 auto;padding:0 28px;}
.sng-hl{color:var(--sng-orange) !important;font-weight:700 !important;}

/* ---------- Base reutilizável pra qualquer página construída por nós ---------- */
.sng-content a{color:inherit;text-decoration:none;}
.sng-content img{max-width:100%;display:block;}
.sng-content h1,.sng-content h2,.sng-content h3{color:var(--sng-ink) !important;margin:0 0 .5em;font-weight:600 !important;line-height:1.12 !important;letter-spacing:-.01em;}
.sng-content p{color:var(--sng-body);margin:0 0 1em;}
.sng-content section{padding:96px 0;}
@media(max-width:700px){.sng-content section{padding:56px 0;}}
.sng-section-head{max-width:600px;margin:0 auto 52px;text-align:center;}
.sng-section-head h2{font-size:2.05rem;}
.sng-bg-soft{background:var(--sng-bg-soft);}

/* Cabeçalho simples de página interna (Contato, Institucional, etc.) */
.sng-page-header{position:relative;background:var(--sng-navy-900);color:#fff;padding:76px 0;text-align:center;overflow:hidden;}
.sng-page-header::before{content:"";position:absolute;width:480px;height:480px;background:radial-gradient(circle,rgba(245,115,12,.18),transparent 70%);top:-220px;left:-140px;}
.sng-page-header .sng-wrap{position:relative;}
.sng-page-header .sng-breadcrumb{font-size:13px;color:#9aa6c4;margin-bottom:14px;}
.sng-page-header .sng-breadcrumb a{color:#c4cee6;}
.sng-page-header .sng-breadcrumb a:hover{color:var(--sng-orange);}
.sng-page-header h1{color:#fff !important;font-size:2.4rem;margin-bottom:12px;}
.sng-page-header p{color:#c4cee6;max-width:520px;margin:0 auto;}

/* ---------- Icon cards (Expertise / Metodologia / reutilizável) ---------- */
.sng-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.sng-icard{display:block;position:relative;background:#fff;border:1px solid var(--sng-border);border-radius:16px;padding:34px 28px;transition:transform .3s cubic-bezier(.22,1,.36,1), border-color .3s, box-shadow .3s;overflow:hidden;}
.sng-icard::before{content:"";position:absolute;inset:0;background:linear-gradient(150deg,var(--sng-navy-900),var(--sng-navy-700));opacity:0;transition:opacity .35s;z-index:0;}
.sng-icard:hover{transform:translateY(-8px);border-color:transparent;box-shadow:0 18px 40px -18px rgba(8,13,36,.35);}
.sng-icard:hover::before{opacity:1;}
.sng-icard .sng-icon-wrap,.sng-icard h3,.sng-icard p,.sng-icard .sng-hub-step-num{position:relative;z-index:1;}
.sng-icard .sng-icon-wrap{width:58px;height:58px;border-radius:13px;background:var(--sng-orange);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:background .3s, color .3s;}
.sng-icard .sng-icon-wrap img,.sng-icard .sng-icon-wrap svg{width:28px;height:28px;}
.sng-icard .sng-icon-wrap img{filter:brightness(0) invert(1);transition:filter .3s;}
.sng-icard:hover .sng-icon-wrap{background:#fff;color:var(--sng-orange);}
.sng-icard:hover .sng-icon-wrap img{filter:none;}
.sng-icard h3{font-size:1.05rem !important;margin-bottom:9px;transition:color .3s;}
.sng-icard:hover h3{color:#fff !important;}
.sng-icard p{font-size:14px;margin:0;color:#7c8496;transition:color .3s;}
.sng-icard:hover p{color:#b9c2dc;}
@media(max-width:900px){.sng-grid-3{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.sng-grid-3{grid-template-columns:1fr;}}

/* ---------- Bloco de Contato (reutilizável) ---------- */
.sng-contato{background:var(--sng-bg-soft);}
.sng-contato-card{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(8,13,36,.25);}
.sng-contato-info{background:var(--sng-navy-900);color:#fff;padding:52px 44px;position:relative;overflow:hidden;}
.sng-contato-info::before{content:"";position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(245,115,12,.22),transparent 70%);bottom:-140px;left:-100px;}
.sng-contato-info h2{position:relative;color:#fff !important;font-size:1.7rem;}
.sng-contato-info p{position:relative;color:#b6c0da;font-size:14.5px;margin-bottom:32px;}
.sng-contato-links{position:relative;display:flex;flex-direction:column;gap:22px;}
.sng-item{display:flex;gap:14px;align-items:center;transition:transform .2s;}
a.sng-item:hover{transform:translateX(3px);}
a.sng-item:hover .sng-value{color:var(--sng-orange) !important;}
.sng-icon{width:42px;height:42px;border-radius:11px;background:rgba(245,115,12,.16) !important;color:var(--sng-orange) !important;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sng-icon svg{width:19px;height:19px;}
.sng-label{font-size:12.5px;color:#8b96b3;margin-bottom:2px;}
.sng-value{font-size:14.5px;color:#fff !important;font-weight:600;}
.sng-contato-form{background:#fff;padding:52px 44px;}
.sng-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.sng-form-grid input,.sng-form-grid textarea{grid-column:span 1;width:100%;padding:13px 16px;border-radius:9px;border:1px solid var(--sng-border);background:var(--sng-bg-soft);font-size:14px;font-family:inherit;transition:border-color .2s, background .2s;}
.sng-form-grid input:focus,.sng-form-grid textarea:focus{outline:none;border-color:var(--sng-orange);background:#fff;}
.sng-form-grid textarea{grid-column:1/-1;min-height:100px;resize:vertical;}
.sng-form-grid .sng-full{grid-column:1/-1;}
.sng-form-check{
  grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;font-size:13.5px !important;color:var(--sng-body) !important;
  cursor:pointer;line-height:1.5 !important;
}
.sng-form-check span{font-size:13.5px !important;color:var(--sng-body) !important;line-height:1.5 !important;}
.sng-form-check input[type="checkbox"]{
  width:17px;height:17px;flex-shrink:0;margin-top:2px;accent-color:var(--sng-orange);cursor:pointer;
}
.sng-form-lgpd a{color:var(--sng-orange) !important;text-decoration:underline;font-size:inherit !important;}
.sng-submit-btn{margin-top:6px;grid-column:1/-1;justify-self:start;background:var(--sng-orange) !important;color:#fff !important;border:none;padding:14px 32px;border-radius:999px !important;font-weight:700;font-size:14.5px;cursor:pointer;transition:background .2s, transform .2s;font-family:inherit;}
.sng-submit-btn:hover{background:var(--sng-orange-dark) !important;transform:translateY(-2px);}
@media(max-width:860px){.sng-contato-card{grid-template-columns:1fr;}.sng-contato-info,.sng-contato-form{padding:40px 28px;}}
@media(max-width:480px){.sng-form-grid{grid-template-columns:1fr;}.sng-form-grid input{grid-column:1/-1;}}

/* ---------- HEADER / NAV ---------- */
.sng-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--sng-border);}
.sng-header-inner{max-width:1200px;margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.sng-logo img{height:54px;width:auto;}
.sng-nav-pill{position:relative;display:flex;align-items:center;gap:2px;background:var(--sng-bg-soft);border:1px solid var(--sng-border);border-radius:999px;padding:5px;}
.sng-nav-pill ul.sng-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px;}
.sng-nav-highlight{position:absolute;top:5px;bottom:5px;left:5px;width:0;border-radius:999px;background:var(--sng-navy-900);transition:transform .32s cubic-bezier(.22,1,.36,1), width .32s cubic-bezier(.22,1,.36,1);z-index:0;}
.sng-nav-pill ul.sng-menu > li{position:relative;}
.sng-nav-pill ul.sng-menu > li > a{position:relative;z-index:1;display:flex;align-items:center;gap:5px;padding:9px 18px;font-size:14px;font-weight:600;color:var(--sng-ink);border-radius:999px;transition:color .25s;white-space:nowrap;font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;}
.sng-nav-pill ul.sng-menu > li.menu-item-has-children > a::after{
  content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;
  transform:rotate(45deg);margin-top:-3px;opacity:.6;transition:transform .2s;
}
.sng-nav-pill ul.sng-menu > li.menu-item-has-children:hover > a::after{transform:rotate(225deg);margin-top:3px;}
.sng-nav-pill ul.sng-menu > li > a.sng-lit{color:#fff;}

/* Dropdown de submenu */
.sng-nav-pill ul.sng-menu .sub-menu{
  list-style:none;margin:0;padding:8px;position:absolute;top:calc(100% + 14px);left:0;
  min-width:240px;background:#fff;border:1px solid var(--sng-border);border-radius:14px;
  box-shadow:0 18px 40px -14px rgba(8,13,36,.22);
  opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .2s, transform .2s, visibility .2s;z-index:80;
}
.sng-nav-pill ul.sng-menu > li.menu-item-has-children:hover .sub-menu,
.sng-nav-pill ul.sng-menu > li.menu-item-has-children:focus-within .sub-menu{
  opacity:1;visibility:visible;transform:translateY(0);
}
.sng-nav-pill ul.sng-menu .sub-menu li a{
  display:block;padding:10px 14px;border-radius:9px;font-size:14px;font-weight:500;
  color:var(--sng-ink);white-space:nowrap;transition:background .2s, color .2s;
}
.sng-nav-pill ul.sng-menu .sub-menu li a:hover{background:var(--sng-bg-soft);color:var(--sng-orange);}

.sng-cta-pill{background:var(--sng-orange) !important;color:var(--sng-navy-900) !important;font-weight:700;font-size:14px;padding:11px 24px;border-radius:999px !important;transition:background .2s, transform .2s;flex-shrink:0;border:none;}
.sng-cta-pill:hover{background:var(--sng-orange-dark) !important;color:var(--sng-navy-900) !important;transform:translateY(-2px);}
.sng-nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--sng-ink);width:38px;height:38px;align-items:center;justify-content:center;}
.sng-nav-toggle svg{width:22px;height:22px;}
.sng-nav-mobile{display:none;}
@media(max-width:900px){
  .sng-nav-pill{display:none;}
  .sng-nav-toggle{display:flex;}
  .sng-nav-mobile{display:none;flex-direction:column;background:#fff;border-top:1px solid var(--sng-border);padding:8px 28px 18px;}
  .sng-nav-mobile.sng-open{display:flex;}
  .sng-nav-mobile ul.sng-menu-mobile{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
  .sng-nav-mobile ul.sng-menu-mobile li a{display:block;padding:12px 4px;font-weight:600;color:var(--sng-ink);border-bottom:1px solid var(--sng-bg-soft);font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;}
  .sng-nav-mobile ul.sng-menu-mobile .sub-menu{list-style:none;margin:0 0 4px;padding:0 0 0 16px;}
  .sng-nav-mobile ul.sng-menu-mobile .sub-menu li a{padding:10px 4px;font-weight:500;font-size:14px;border-bottom:none;color:var(--sng-body);}
}
@media(max-width:480px){
  .sng-header-inner{padding:10px 16px;gap:12px;}
  .sng-logo img{height:38px;}
  .sng-cta-pill{padding:9px 16px;font-size:13px;}
}

/* ---------- FOOTER ---------- */
.sng-footer{background:var(--sng-navy-900);color:#8b96b3;padding:64px 0 26px;font-size:14px;}
.sng-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;}
.sng-footer-grid h5{color:#fff !important;font-size:15px;margin:0 0 18px;font-weight:700;}
.sng-footer-brand p{margin:0;font-size:13.5px;max-width:270px;line-height:1.6;}
.sng-footer-logo{margin-bottom:18px;}
.sng-footer-logo img{height:64px;width:auto;}

.sng-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;}
.sng-footer-links a{color:#b9c2dc !important;text-decoration:none;transition:color .2s, padding-left .2s;display:flex;align-items:center;gap:6px;font-size:14px;}
.sng-footer-links a::before{content:"»";color:var(--sng-orange);font-weight:700;}
.sng-footer-links a:hover{color:#fff !important;padding-left:4px;}

.sng-footer-whats-card{
  display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  border-radius:14px;padding:14px 18px;margin-bottom:18px;transition:background .2s, transform .2s;
}
.sng-footer-whats-card:hover{background:rgba(255,255,255,.1);transform:translateY(-2px);}
.sng-footer-whats-icon{width:40px;height:40px;border-radius:50%;background:var(--sng-orange) !important;color:#fff !important;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sng-footer-whats-icon svg{width:19px;height:19px;}
.sng-footer-whats-label{display:block;font-size:11px;color:#9aa2b6 !important;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;}
.sng-footer-whats-value{display:block;font-size:14.5px;color:#fff !important;font-weight:700;}

.sng-footer-social{display:flex;gap:12px;}
.sng-footer-social a{
  width:40px;height:40px;border-radius:50%;background:var(--sng-orange) !important;color:#fff !important;
  display:flex;align-items:center;justify-content:center;transition:background .2s, transform .2s;
}
.sng-footer-social a:hover{background:var(--sng-orange-dark) !important;transform:translateY(-3px);}
.sng-footer-social svg{width:18px;height:18px;}

.sng-footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:44px;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:#5c6580 !important;}
.sng-footer-bottom a{color:#5c6580 !important;text-decoration:none;transition:color .2s;}
.sng-footer-bottom a:hover{color:#fff !important;}

@media(max-width:900px){.sng-footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.sng-footer-grid{grid-template-columns:1fr;}}

/* ---------- FAQ (reutilizável, aparece em várias páginas) ---------- */
.sng-faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.sng-faq-item{background:#fff !important;border:1px solid var(--sng-border);border-radius:14px;overflow:hidden;transition:border-color .25s;}
.sng-faq-item.sng-open{border-color:var(--sng-orange);}
.sng-faq-q{width:100%;text-align:left;background:none !important;border:none;cursor:pointer;padding:20px 24px;font-size:15.5px;font-weight:600;color:var(--sng-ink) !important;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:inherit;border-radius:0 !important;}
.sng-num{color:#c3c9d8;font-weight:700;font-size:13px;margin-right:8px;}
.sng-chev{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--sng-bg-soft);display:flex;align-items:center;justify-content:center;transition:transform .3s, background .3s;}
.sng-faq-item.sng-open .sng-chev{transform:rotate(45deg);background:var(--sng-orange) !important;color:#fff !important;}
.sng-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.sng-faq-item.sng-open .sng-faq-a{max-height:900px;}
.sng-faq-a-inner{padding:0 24px 22px 24px;font-size:14.5px;color:#6b7284;border-top:1px solid var(--sng-bg-soft);padding-top:16px;}
.sng-faq-a-inner p{margin:0 0 12px;}
.sng-faq-a-inner ul{margin:0 0 12px;padding-left:20px;}
.sng-faq-a-inner strong{color:var(--sng-ink);}
.sng-faq-pending{font-style:italic;color:#c3893f !important;background:#fff7ea;border:1px dashed #f0c98a;padding:10px 14px;border-radius:8px;}

/* ---------- CONTEÚDO LEGAL (Política de Privacidade, Termos, etc.) ---------- */
.sng-legal-content{max-width:760px;margin:0 auto;}
.sng-legal-content h2{font-size:1.3rem !important;margin-top:2em !important;}
.sng-legal-content h2:first-child{margin-top:0 !important;}
.sng-legal-content p{font-size:15px;line-height:1.7;}
.sng-legal-content ul{margin:0 0 1em;padding-left:22px;color:var(--sng-body);font-size:15px;line-height:1.8;}
.sng-legal-content a{color:var(--sng-orange) !important;text-decoration:underline;}

/* ---------- Tag "Carro-chefe" e link de card de serviço (home + hub) ---------- */
.sng-hub-tag{display:inline-flex;align-items:center;gap:6px;background:var(--sng-orange-soft);color:var(--sng-orange) !important;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 14px;border-radius:999px;margin-bottom:16px;}
.sng-icard:hover .sng-hub-tag{background:rgba(245,115,12,.2);}
.sng-svc-card-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:700;font-size:13.5px;color:var(--sng-orange) !important;position:relative;z-index:1;}
.sng-icard:hover .sng-svc-card-link{color:#ffb877 !important;}
.sng-svc-card-link svg{width:15px;height:15px;transition:transform .2s;}
.sng-svc-card-link:hover svg{transform:translateX(4px);}

/* ---------- Botão CTA laranja, reutilizável em qualquer contexto ---------- */
.sng-cta-btn{
  display:inline-flex;align-items:center;gap:10px;background:var(--sng-orange) !important;color:#fff !important;
  font-weight:700;font-size:15px;padding:15px 32px;border-radius:999px !important;border:none;
  transition:background .2s, transform .2s;
}
.sng-cta-btn:hover{background:var(--sng-orange-dark) !important;color:#fff !important;transform:translateY(-2px);}
.sng-cta-btn svg{width:18px;height:18px;}

/* ---------- Faixa escura com brilho, reutilizável (Institucional + Energia Crítica) ---------- */
.sng-purpose{position:relative;background:var(--sng-navy-900);overflow:hidden;}
.sng-purpose-glow{position:absolute;width:520px;height:520px;background:radial-gradient(circle,rgba(245,115,12,.16),transparent 70%);top:-180px;right:-160px;}
.sng-purpose .sng-wrap{position:relative;}
.sng-purpose .sng-section-head p{color:#c4cee6;}
