/* AWS Engenharia — overrides p/ WordPress */
:root {
  --primary: 214 80% 28%;
  --primary-foreground: 0 0% 100%;
  --primary-dark: 214 85% 20%;
  --accent: 24 95% 53%;
  --accent-foreground: 0 0% 100%;
  --foreground: 214 32% 15%;
  --muted-foreground: 214 10% 55%;
  --border: 214 20% 90%;
}
html, body { font-family: 'Inter', system-ui, -apple-system, sans-serif; color: hsl(var(--foreground)); margin:0; padding:0; }
body { background:#fff; }
.aws-icon { display:inline-block; vertical-align:middle; width:1rem; height:1rem; flex-shrink:0; }
.aws-icon.w-3 { width:.75rem; } .aws-icon.h-3 { height:.75rem; }
.aws-icon.w-3\.5 { width:.875rem; } .aws-icon.h-3\.5 { height:.875rem; }
.aws-icon.w-4 { width:1rem; } .aws-icon.h-4 { height:1rem; }
.aws-icon.w-5 { width:1.25rem; } .aws-icon.h-5 { height:1.25rem; }
.aws-icon.w-6 { width:1.5rem; } .aws-icon.h-6 { height:1.5rem; }
.aws-icon.w-8 { width:2rem; } .aws-icon.h-8 { height:2rem; }
svg.aws-icon { max-width:1.5rem; max-height:1.5rem; }
img { max-width:100%; height:auto; display:block; }
a { color: inherit; text-decoration:none; }
* { box-sizing: border-box; }

/* Containers helpers */
.aws-container { max-width: 72rem; margin: 0 auto; padding: 0 1.5rem; }

/* Buttons */
.aws-btn { display:inline-flex; align-items:center; gap:.5rem; padding:.75rem 1.5rem; border-radius:.75rem; font-weight:600; font-size:.875rem; transition:all .2s; cursor:pointer; border:none; }
.aws-btn-accent { background: hsl(var(--accent)); color:#fff; box-shadow: 0 10px 25px -10px hsl(var(--accent) / .25); }
.aws-btn-accent:hover { background: hsl(var(--accent) / .9); }
.aws-btn-outline { background:transparent; border:1px solid hsl(var(--border)); color: hsl(var(--foreground)); }
.aws-btn-outline:hover { border-color: hsl(var(--primary) / .3); }

/* Partners marquee */
@keyframes aws-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes aws-marquee-reverse { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.aws-marquee-track { display:flex; align-items:center; gap:2.5rem; width:max-content; animation: aws-marquee 35s linear infinite; }
.aws-marquee-track.reverse { animation: aws-marquee-reverse 30s linear infinite; }
.aws-marquee-item { flex-shrink:0; height:3.5rem; width:9rem; display:flex; align-items:center; justify-content:center; filter: none; opacity:1; transition: all .3s; }
.aws-marquee-item:hover { filter: grayscale(1); opacity:.5; }
.aws-marquee-item img { max-height:100%; max-width:100%; object-fit:contain; }
.aws-marquee-wrap { position:relative; overflow:hidden; }
.aws-marquee-wrap::before, .aws-marquee-wrap::after { content:""; position:absolute; top:0; bottom:0; width:5rem; z-index:10; pointer-events:none; }
.aws-marquee-wrap::before { left:0; background: linear-gradient(to right, #fff, transparent); }
.aws-marquee-wrap::after { right:0; background: linear-gradient(to left, #fff, transparent); }

/* Tabs visibles */
.aws-hidden { display:none !important; }
.aws-active-tab { background: hsl(var(--primary)); color:#fff; border-color: hsl(var(--primary)); box-shadow: 0 10px 25px -10px hsl(var(--primary) / .2); }

/* Form styles */
.aws-input { width:100%; background: hsl(0 0% 97% / .5); border:1px solid hsl(var(--border)); border-radius:.75rem; padding:.75rem 1rem; font-size:.875rem; color: hsl(var(--foreground)); outline:none; transition:all .2s; font-family: inherit; }
.aws-input:focus { border-color: hsl(var(--primary) / .5); background:#fff; }
.aws-label { font-size: .75rem; font-weight: 500; color: hsl(var(--foreground)); margin-bottom: .375rem; display:block; }

/* WhatsApp floating fix (none — removed) */

/* Navbar */
.aws-nav { position: fixed; top:0; left:0; right:0; z-index:50; background:#fff; box-shadow: 0 2px 4px rgba(0,0,0,.06); border-bottom:1px solid hsl(var(--border)); }
.aws-nav-inner { max-width:1200px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; height:5rem; padding: 0 1.5rem; }
.aws-nav-link { font-size:.6875rem; letter-spacing:.1em; color: hsl(var(--foreground) / .6); font-weight:600; text-transform:uppercase; transition: color .2s; }
.aws-nav-link:hover { color: hsl(var(--accent)); }

/* Section spacing helper for Elementor */
.aws-section { padding: 7rem 1.5rem; }
@media (max-width: 768px) {
  .aws-container { padding: 0 1rem; }
  .aws-section { padding: 4rem 1rem; }
}

/* Count-up baseline */
.aws-count { font-variant-numeric: tabular-nums; }

/* Animation simple fade-in on load */
.aws-fadein { opacity:0; transform: translateY(10px); animation: awsFadeIn .6s ease forwards; }
@keyframes awsFadeIn { to { opacity:1; transform: translateY(0); } }

/* Adjust Elementor sections to not break our layout */
.elementor-widget-aws_hero, .elementor-widget-aws_services, .elementor-widget-aws_process,
.elementor-widget-aws_structure, .elementor-widget-aws_differentials, .elementor-widget-aws_portfolio,
.elementor-widget-aws_cta_banner, .elementor-widget-aws_authority, .elementor-widget-aws_contact,
.elementor-widget-aws_partners, .elementor-widget-aws_segments_strip, .elementor-widget-aws_quick_access,
.elementor-widget-aws_numbers_strip, .elementor-widget-aws_footer, .elementor-widget-aws_navbar {
  width: 100%;
}
