:root{
      --navy:#07182f;
      --navy-2:#0b2343;
      --blue:#0878cf;
      --blue-2:#31a8ff;
      --cyan:#71d0ff;
      --white:#fff;
      --ink:#102237;
      --muted:#66788b;
      --line:#dce5ed;
      --soft:#f3f7fa;
      --success:#20ba72;
      --shadow:0 18px 55px rgba(7,24,47,.12);
      --radius:22px;
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--navy);overscroll-behavior-y:none}
    body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--navy);line-height:1.55;overscroll-behavior-y:none}
    body.menu-open{overflow:hidden}
    main{background:#fff}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button,input,textarea,select{font:inherit}
    .container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
    .eyebrow{display:inline-flex;gap:8px;align-items:center;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;color:var(--blue)}
    .eyebrow:before{content:"";width:28px;height:2px;background:currentColor;border-radius:2px}
    body:not(.wisdom-elementor-page) h1,body:not(.wisdom-elementor-page) h2,body:not(.wisdom-elementor-page) h3,body:not(.wisdom-elementor-page) p{margin-top:0}
    body:not(.wisdom-elementor-page) h1{font-size:clamp(2.55rem,5vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin-bottom:24px}
    body:not(.wisdom-elementor-page) h2{font-size:clamp(2rem,3.5vw,3.55rem);line-height:1.05;letter-spacing:-.04em;margin-bottom:18px}
    body:not(.wisdom-elementor-page) h3{font-size:1.18rem;margin-bottom:10px}
    body:not(.wisdom-elementor-page) p{color:var(--muted)}
    .lead{font-size:clamp(1.05rem,1.5vw,1.22rem);max-width:720px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:14px 20px;font-weight:800;cursor:pointer;transition:.2s ease;white-space:nowrap}
    .btn-primary{color:#fff;background:linear-gradient(135deg,var(--blue),#005cac);box-shadow:0 10px 24px rgba(8,120,207,.27)}
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(8,120,207,.34)}
    a[href^="https://wa.me/"].btn:focus-visible,.menu-btn:focus-visible,.nav-links a:focus-visible{outline:3px solid rgba(113,208,255,.8);outline-offset:3px}
    .btn-secondary{background:#fff;color:var(--navy);border:1px solid rgba(255,255,255,.25)}
    .btn-outline{background:transparent;border:1px solid var(--line);color:var(--navy)}
    .btn-outline:hover{border-color:var(--blue);color:var(--blue)}
    .arrow{font-size:1.15em;line-height:1}

    /* header */
    .site-header{position:fixed;top:-1px;left:0;right:0;z-index:50;transition:.25s ease;transform:translateZ(0);padding-top:1px;background:rgba(7,24,47,.01)}
    .site-header:before{content:"";position:absolute;left:0;right:0;top:-4px;height:5px;background:var(--navy);pointer-events:none}
    .site-header.scrolled{background:rgba(7,24,47,.93);backdrop-filter:blur(14px);box-shadow:0 10px 35px rgba(0,0,0,.14)}
    .nav{height:calc(88px + env(safe-area-inset-top, 0px));padding-top:env(safe-area-inset-top, 0px);display:flex;align-items:center;justify-content:space-between;gap:20px}
    .brand{display:flex;align-items:center;gap:12px;min-width:150px;flex:0 0 auto}
    .brand img{height:46px;width:auto}
    .nav-links{display:flex;align-items:center;justify-content:center;gap:20px;color:#dbeaff;font-weight:700;font-size:.93rem;flex:1;min-width:0}
    .nav-links a{opacity:.86;transition:.2s ease}
    .nav-links a:hover{opacity:1;color:#fff}
    .nav-actions{display:flex;gap:10px;align-items:center;flex:0 0 auto}
    .nav-phone{color:#fff;font-weight:800;font-size:.92rem}
    .menu-btn{display:none;width:46px;height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;font-size:1.4rem}

    /* hero */
    .hero{min-height:92vh;position:relative;display:grid;place-items:center;color:#fff;overflow:hidden;background:var(--navy)}
    .hero:before{content:"";position:absolute;inset:0;background:
        linear-gradient(90deg,rgba(3,15,31,.94) 0%,rgba(3,15,31,.84) 43%,rgba(3,15,31,.38) 72%,rgba(3,15,31,.52) 100%),
        var(--hero-image,url('../images/hero-vigilantes.jpg')) center 33% / cover no-repeat;transform:scale(1.02)}
    .hero:after{content:"";position:absolute;inset:auto -15% -36% 30%;height:70%;background:radial-gradient(circle at center,rgba(0,139,239,.38),transparent 65%);filter:blur(14px)}
    .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:end;padding:160px 0 92px}
    .hero-copy{max-width:760px}
    .hero .eyebrow{color:#70cfff}
    .hero .lead{color:#d7e6f3;max-width:640px;margin-bottom:30px}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px}
    .trust-panel{justify-self:end;max-width:390px;border:1px solid rgba(255,255,255,.18);background:rgba(8,29,54,.62);backdrop-filter:blur(13px);border-radius:26px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.22)}
    .trust-top{display:flex;align-items:center;gap:14px;margin-bottom:20px}
    .shield{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));font-size:1.4rem}
    .trust-panel strong{display:block;font-size:1.05rem}
    .trust-panel small{color:#bdd0e1}
    .trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .trust-item{border-radius:17px;background:rgba(255,255,255,.075);padding:15px}
    .trust-item b{display:block;font-size:1.32rem;color:#fff}
    .trust-item span{font-size:.82rem;color:#c4d5e4}

    /* intro strip */
    .strip{background:#fff;position:relative;z-index:5;margin-top:-1px;border-bottom:1px solid var(--line)}
    .strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}
    .strip-item{padding:23px 24px;display:flex;gap:14px;align-items:center;border-right:1px solid var(--line)}
    .strip-item:last-child{border-right:0}
    .strip-icon{width:40px;height:40px;border-radius:12px;background:#eaf6ff;color:var(--blue);display:grid;place-items:center;font-weight:900}
    .strip-item strong{display:block;font-size:.92rem}
    .strip-item span{display:block;color:var(--muted);font-size:.8rem}

    body:not(.wisdom-elementor-page) main section{padding:100px 0}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}
    .section-head > div:first-child{max-width:780px}

    /* services */
    .services{background:linear-gradient(#fff,#f7fafc)}
    .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .service-card{position:relative;min-height:440px;border-radius:var(--radius);overflow:hidden;color:#fff;box-shadow:var(--shadow);isolation:isolate;background:#0b2444}
    .service-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,rgba(4,18,36,.96) 0%,rgba(4,18,36,.42) 54%,rgba(4,18,36,.06) 100%),var(--bg);background-size:cover;background-position:center;z-index:-2;transition:transform .45s ease}
    .service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(0,126,214,.0),rgba(0,126,214,.22));z-index:-1}
    .service-card:hover:before{transform:scale(1.045)}
    .service-content{position:absolute;left:0;right:0;bottom:0;padding:25px}
    .service-kicker{display:block;color:#8ed8ff;font-weight:800;font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
    .service-card h3{font-size:1.45rem;margin-bottom:8px}
    .service-card p{color:#d2e1ed;font-size:.94rem;margin-bottom:18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .text-link{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:800;border:0;background:none;padding:0;cursor:pointer}

    /* about */
    .about{background:var(--navy);color:#fff;position:relative;overflow:hidden}
    .about:after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-310px;top:-260px;background:radial-gradient(circle,rgba(49,168,255,.22),transparent 65%)}
    .about-grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
    .about-visual{position:relative}
    .about-visual img{width:100%;aspect-ratio:4/4.5;object-fit:cover;border-radius:28px;box-shadow:0 28px 75px rgba(0,0,0,.28)}
    .about-badge{position:absolute;right:-25px;bottom:28px;background:#fff;color:var(--navy);padding:20px 22px;border-radius:19px;box-shadow:var(--shadow);max-width:230px}
    .about-badge b{display:block;font-size:2rem;line-height:1;color:var(--blue);margin-bottom:7px}
    .about-copy p{color:#c7d5e3}
    .about-points{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0 34px}
    .point{display:flex;gap:10px;align-items:flex-start;color:#eaf3fb;font-weight:700;font-size:.94rem}
    .check{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:rgba(49,168,255,.17);color:#76d3ff;flex:0 0 auto;margin-top:1px}

    /* segments */
    .segment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .segment-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:28px;transition:.2s ease}
    .segment-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#c7d8e6}
    .segment-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#eaf6ff;color:var(--blue);font-size:1.3rem;margin-bottom:22px}
    .segment-card p{margin-bottom:0}

    /* clients — visual da versão 4 + slider automático */
    .clients{background:var(--soft)}
    .logo-slider{position:relative;overflow:hidden;width:100%;padding:1px 0}
    .logo-track{display:flex;gap:14px;transition:transform .62s cubic-bezier(.22,.61,.36,1);will-change:transform}
    .logo-box{height:116px;flex:0 0 calc((100% - 70px)/6);border:1px solid var(--line);background:#fff;border-radius:17px;display:grid;place-items:center;padding:18px;overflow:hidden}
    .logo-box img{max-height:75px;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.8;transition:.2s ease}
    .logo-box:hover img{filter:none;opacity:1;transform:scale(1.03)}

    /* cta */
    .cta-wrap{padding:72px 0;background:#fff}
    .cta{overflow:hidden;position:relative;border-radius:30px;background:linear-gradient(125deg,#06172e,#0c315c 72%,#075e9c);color:#fff;padding:52px;display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;box-shadow:var(--shadow)}
    .cta:after{content:"";position:absolute;right:-100px;top:-160px;width:420px;height:420px;border-radius:50%;border:80px solid rgba(103,208,255,.09)}
    .cta h2{font-size:clamp(2rem,3vw,3.15rem);margin-bottom:12px;max-width:730px}
    .cta p{color:#cfe0ed;max-width:700px;margin-bottom:0}
    .cta .btn{position:relative;z-index:2}

    /* contact */
    .contact{background:#fff}
    .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px}
    .contact-info{border-radius:26px;background:var(--navy);color:#fff;padding:34px;position:relative;overflow:hidden}
    .contact-info:after{content:"";position:absolute;right:-120px;bottom:-140px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(49,168,255,.28),transparent 66%)}
    .contact-info p{color:#c7d8e6}
    .contact-row{position:relative;z-index:2;display:flex;gap:14px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}
    .contact-row:last-child{border-bottom:0}
    .contact-row b{display:block;color:#fff;margin-bottom:3px}
    .contact-row span,.contact-row a{color:#c8d9e6}
    .form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .form label{display:block;font-weight:800;font-size:.86rem;margin-bottom:7px;color:#26394b}
    .field{width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 15px;outline:none;background:#fff;transition:.2s ease}
    .field:focus{border-color:#6ebce9;box-shadow:0 0 0 4px rgba(8,120,207,.08)}
    textarea.field{min-height:135px;resize:vertical}
    .full{grid-column:1/-1}
    .form-note{font-size:.78rem;color:#8292a2;margin:0}

    .map{height:350px;margin-top:22px;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#eaf0f4}
    .map iframe{width:100%;height:100%;border:0}

    footer{background:#041326;color:#fff;padding:55px 0 28px}
    .footer-grid{display:grid;grid-template-columns:1.15fr .75fr .75fr;gap:46px;margin-bottom:42px}
    .footer-brand img{height:52px;width:auto;margin-bottom:18px}
    .footer-brand p{color:#aebfd0;max-width:480px}
    footer h3{font-size:1rem;margin-bottom:15px}
    .footer-links{display:grid;gap:9px;color:#b7c8d7;font-size:.92rem}
    .footer-links a:hover{color:#fff}
    .footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#8fa3b6;font-size:.84rem;flex-wrap:wrap}.developer-credit{color:#a9bdd0}

    .whatsapp{position:fixed;right:22px;bottom:22px;z-index:45;width:58px;height:58px;border-radius:50%;background:#24c26a;color:#fff;display:grid;place-items:center;font-size:1.5rem;box-shadow:0 13px 30px rgba(0,0,0,.22);transition:.2s ease}
    .whatsapp:hover{transform:translateY(-3px) scale(1.03)}

    /* modal */
    .modal{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(2,10,20,.78);backdrop-filter:blur(8px)}
    .modal.open{display:flex}
    .modal-card{width:min(850px,100%);max-height:min(760px,88vh);overflow:auto;background:#fff;border-radius:25px;box-shadow:0 35px 100px rgba(0,0,0,.35)}
    .modal-hero{height:270px;position:relative;background:#10253e var(--modal-img) center/cover no-repeat}
    .modal-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,20,38,.75),transparent)}
    .modal-close{position:absolute;z-index:2;right:18px;top:18px;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);font-size:1.3rem;cursor:pointer}
    .modal-title{position:absolute;left:28px;bottom:22px;z-index:2;color:#fff;margin:0;font-size:2rem}
    .modal-body{padding:30px}
    .modal-body p,.modal-body li{color:#526679}
    .modal-body ul{padding-left:20px}
    .modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}

    .fade-up{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease}
    .fade-up.visible{opacity:1;transform:none}

    @media (max-width:1120px){
      .nav-links,.nav-phone{display:none}.menu-btn{display:block}
      .nav-actions .btn{display:none}
      .hero-grid{grid-template-columns:1fr;padding-top:145px}.trust-panel{justify-self:start;max-width:100%}
      .strip-grid{grid-template-columns:1fr 1fr}.strip-item:nth-child(2){border-right:0}.strip-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
      .service-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr;gap:45px}.about-visual{max-width:650px}.about-badge{right:18px}
      .logo-box{flex-basis:calc((100% - 42px)/4)}
      .contact-grid{grid-template-columns:1fr}.cta{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
      .mobile-menu{position:fixed;inset:0;z-index:49;background:rgba(4,19,38,.98);padding:110px 28px 30px;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-menu.open{display:block}.mobile-menu a{display:block;color:#fff;font-size:1.5rem;font-weight:800;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}
    }
    @media (max-width:700px){
      .container{width:min(calc(100% - 28px),var(--max))}.nav{height:calc(76px + env(safe-area-inset-top, 0px));padding-top:env(safe-area-inset-top, 0px)}.brand img{height:38px}
      .hero{min-height:auto}.hero-grid{padding:130px 0 70px;gap:35px}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}
      .trust-grid{grid-template-columns:1fr 1fr}.strip-grid{grid-template-columns:1fr}.strip-item{border-right:0;border-bottom:1px solid var(--line)!important}.strip-item:last-child{border-bottom:0!important}
      body:not(.wisdom-elementor-page) main section{padding:76px 0}.section-head{display:block;margin-bottom:30px}.section-head .btn{margin-top:8px}
      .service-grid,.segment-grid{grid-template-columns:1fr}.service-card{min-height:410px}.about-points{grid-template-columns:1fr}.about-badge{position:relative;right:auto;bottom:auto;margin:-45px 18px 0}
      .logo-box{flex-basis:calc((100% - 14px)/2)}.cta{padding:34px 24px}.contact-info{padding:26px}.form{grid-template-columns:1fr}.full{grid-column:auto}
      .footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}.modal-hero{height:220px}.modal-title{font-size:1.55rem}.modal-body{padding:24px}
    }

/* WordPress integration */
body.admin-bar .site-header{top:31px}
body.admin-bar .mobile-menu{padding-top:142px}
.wisdom-content{background:#fff;padding:150px 0 90px;min-height:70vh}
.wisdom-content article{width:min(calc(100% - 40px),900px);margin-inline:auto}
.wisdom-content .entry-title{font-size:clamp(2.2rem,4vw,4rem)}
.wisdom-content .entry-content{font-size:1.05rem}
.wisdom-content .entry-content p{color:#526679}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:782px){body.admin-bar .site-header{top:45px}.wisdom-content{padding-top:130px}}



/* Elementor compatibility */
.wisdom-elementor-fullwidth{width:100%;max-width:none;margin:0;padding:0;background:#fff;min-height:1px}
body.wisdom-elementor-page main{background:#fff}
body.wisdom-elementor-page .elementor{width:100%}
body.wisdom-elementor-page .site-header + .mobile-menu + main{padding-top:0}
.elementor-template-full-width .wisdom-elementor-fullwidth{overflow:hidden}
