@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--ink:#17252b;--muted:#66767c;--paper:#f5f7f4;--white:#fff;--blue:#123f73;--blue2:#1976b9;--line:#dce4e6;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}button,input,select,textarea{font:inherit}.site-header{height:82px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,6vw,90px);background:rgba(245,247,244,.96);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink)}.ss-logo{width:58px;height:52px;border:2px solid var(--blue2);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--blue)}.ss-logo b{font:800 18px/1 Manrope}.ss-logo small{font:800 7px/1 Manrope;margin-top:4px}.brand-copy{display:grid}.brand-copy strong{font:800 19px Manrope;text-transform:uppercase}.brand-copy small{font-size:10px;color:var(--muted)}.nav{display:flex;gap:28px}.nav a{font-weight:700;text-decoration:none;color:var(--ink)}.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--blue)}.hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center;padding:70px clamp(24px,7vw,105px)}.eyebrow{display:block;color:var(--blue2);font-weight:800;font-size:12px;letter-spacing:.18em;margin-bottom:16px}.hero h1,.page-hero h1,.home-section h2,.service-detail h2{font-family:Manrope,sans-serif;letter-spacing:-.045em}.hero h1{font-size:clamp(46px,6vw,78px);line-height:1;margin:0}.hero h1 em{font-style:normal;color:var(--blue2)}.hero-copy>p,.page-hero p,.home-section p{color:var(--muted);font-size:17px;line-height:1.75}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;justify-content:center;padding:15px 23px;border-radius:999px;font-weight:800;text-decoration:none;border:0}.btn-primary{background:var(--blue);color:#fff}.btn-secondary{border:1px solid var(--blue);color:var(--blue);background:transparent}.paint-panel{min-height:500px;border-radius:34px;background:linear-gradient(145deg,#07131d,#123f73 55%,#1976b9);position:relative;overflow:hidden;color:#fff;display:grid;place-items:center}.paint-stroke{position:absolute;width:130%;height:100px;left:-15%;border-radius:99px;transform:rotate(-10deg)}.paint-stroke.one{top:70px;background:rgba(255,255,255,.08)}.paint-stroke.two{top:180px;background:rgba(25,118,185,.85)}.hero-stat{position:relative;z-index:2;display:grid;text-align:center}.hero-stat strong{font:800 110px/1 Manrope}.hero-stat span{font-weight:800}.visual-caption{position:absolute;left:28px;right:28px;bottom:25px;background:rgba(4,20,30,.75);padding:18px;border-radius:16px;display:grid}.visual-caption span{opacity:.75;font-size:13px}.home-section,.services-page,.contact-page{padding:90px clamp(24px,7vw,105px)}.home-section h2{font-size:clamp(34px,4vw,54px);line-height:1.08;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:15px}.facts article,.teaser-grid a{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px}.facts strong{display:block;font:800 58px Manrope;color:var(--blue2)}.facts span{color:var(--muted);font-weight:700}.text-link{color:var(--blue);font-weight:800;text-decoration:none}.services-teaser{background:#fff}.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:35px 0}.teaser-grid a{text-decoration:none;color:var(--ink)}.teaser-grid h3{font:800 23px Manrope}.callout{max-width:1000px}.page-hero{padding:100px clamp(24px,7vw,105px) 65px;background:#fff}.page-hero h1{font-size:clamp(44px,6vw,74px);line-height:1;margin:0;max-width:900px}.page-hero p{max-width:750px}.service-detail{display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:center;padding:35px 0;border-bottom:1px solid var(--line)}.service-detail>span{font-weight:800;color:var(--blue2)}.service-detail h2{margin:0;font-size:28px}.service-detail p{color:var(--muted)}.service-detail a{color:var(--blue);font-weight:800;text-decoration:none}.contact-page{max-width:1000px;margin:auto}.contact-choices{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}.contact-choice{padding:25px;text-align:left;border:2px solid var(--line);border-radius:20px;background:#fff;color:var(--ink)}.contact-choice strong,.contact-choice span{display:block}.contact-choice strong{font:800 22px Manrope}.contact-choice span{color:var(--muted);margin-top:7px}.contact-choice.active{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(25,118,185,.08)}form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:grid;gap:7px;margin-top:15px;font-weight:700;font-size:13px}input,select,textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fbfcfc}.form-submit{width:100%;margin-top:20px}.form-status{min-height:20px;color:var(--muted)}.hp{position:absolute;left:-9999px}.site-footer{background:#0b2630;color:#fff;padding:42px clamp(24px,7vw,105px)}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-top p,.footer-bottom{color:rgba(255,255,255,.65)}.footer-top nav{display:flex;gap:20px}.footer-top a,.omnicode-credit a{color:#fff;text-decoration:none}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:28px;padding-top:22px}.omnicode-credit a{font-weight:800;border-bottom:1px solid currentColor}
@media(max-width:760px){.site-header{height:72px;padding:0 18px}.brand-copy small{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column}.nav.is-open{display:flex}.hero{grid-template-columns:1fr;padding:55px 20px}.hero h1{font-size:46px}.paint-panel{min-height:350px}.split,.facts,.teaser-grid,.contact-choices,.form-grid{grid-template-columns:1fr}.home-section,.services-page,.contact-page{padding:65px 20px}.page-hero{padding:70px 20px 45px}.service-detail{grid-template-columns:45px 1fr}.service-detail a{grid-column:2}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-top nav{flex-wrap:wrap}.hero-actions .btn{width:100%}}
/* v0.3.3 — canal WhatsApp opcional e qualificado */
.contact-choices{grid-template-columns:repeat(3,1fr)}
.btn-whatsapp{background:#1d6d45;color:#fff}
.btn-whatsapp:disabled{opacity:.42;cursor:not-allowed}
.whatsapp-hint{display:none;margin-top:15px;padding:16px 18px;border-radius:14px;background:#eef7f2;border:1px solid #cfe4d7;color:#244b35}
.whatsapp-hint strong,.whatsapp-hint span{display:block}
.whatsapp-hint span{margin-top:5px;font-size:13px;color:#557164}
#whatsappSubmit{display:none}
@media(max-width:760px){.contact-choices{grid-template-columns:1fr}}

/* v0.3.4 — assinatura OmniCode e proteção visual */
.omnicode-credit{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.omnicode-credit span{opacity:.72}
.omnicode-credit a{display:inline-flex;align-items:center;text-decoration:none}
.omnicode-credit img{display:block;width:150px;max-width:42vw;height:auto;object-fit:contain}
@media(max-width:520px){
  .omnicode-credit{gap:9px}
  .omnicode-credit img{width:132px}
}

@media(max-width:520px){.omnicode-footer-logo{width:145px!important}}

/* v0.3.6 — assinatura OmniCode baseada no componente original do site */
.omnicode-credit{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.credit-label{
  display:inline-block;
  color:rgba(255,255,255,.68);
  font-size:14px;
}
.omnicode-brand{
  display:inline-flex;
  align-items:center;
  gap:11px;
  text-decoration:none!important;
  color:#eef4f5!important;
  border:0!important;
}
.omnicode-brand-mark{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:#78e0b4;
  color:#07110d;
  font-weight:950;
  letter-spacing:-.03em;
}
.omnicode-brand-copy{
  display:block;
  line-height:1.05;
}
.omnicode-brand-copy b{
  display:block;
  font-size:18px;
  color:#eef4f5;
}
.omnicode-brand-copy small{
  display:block;
  margin-top:5px;
  color:#94a1ac;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
@media(max-width:520px){
  .omnicode-credit{align-items:center;gap:12px}
  .credit-label{font-size:13px}
  .omnicode-brand-mark{width:40px;height:40px;border-radius:13px}
  .omnicode-brand-copy b{font-size:17px}
  .omnicode-brand-copy small{font-size:11px}
}
