/* =====================================
   JRS REDES DE PROTEÇÃO
   GLOBAL CSS PREMIUM
===================================== */

:root{
--jrs-green:#255D33;
--jrs-green-dark:#184522;
--jrs-white:#ffffff;
--jrs-black:#111111;
--jrs-gray:#666666;
--jrs-light:#f7f7f7;
--jrs-shadow:0 20px 50px rgba(0,0,0,.12);
--jrs-radius:20px;
--jrs-transition:.4s cubic-bezier(.2,.8,.2,1);
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Inter',sans-serif;
color:var(--jrs-black);
background:#fff;
overflow-x:hidden;
}

h1,h2,h3,h4{
font-family:'Manrope',sans-serif;
font-weight:800;
line-height:1.15;
}

img{
max-width:100%;
display:block;
}

button,
input,
textarea,
select{
font-family:inherit;
}

button{
cursor:pointer;
}

a{
text-decoration:none;
color:inherit;
}

::selection{
background:var(--jrs-green);
color:#fff;
}


/* CONTAINER GLOBAL */

.jrs-container{
width:90%;
max-width:1250px;
margin:auto;
}


/* SEÇÕES */

.jrs-section{
padding:90px 0;
position:relative;
}


/* BOTÕES PREMIUM */

.jrs-btn-primary,
.jrs-btn-orcamento{
display:inline-flex;
align-items:center;
justify-content:center;
gap:10px;
background:var(--jrs-green);
color:#fff;
border:none;
padding:16px 35px;
border-radius:50px;
font-size:15px;
font-weight:700;
transition:var(--jrs-transition);
box-shadow:0 15px 35px rgba(37,93,51,.25);
}

.jrs-btn-primary:hover,
.jrs-btn-orcamento:hover{
transform:translateY(-5px);
background:var(--jrs-green-dark);
box-shadow:0 25px 45px rgba(37,93,51,.35);
}


/* ANIMAÇÕES SCROLL PREMIUM */

[data-animation]{
opacity:0;
transition:1s cubic-bezier(.2,.8,.2,1);
}

[data-animation="fade-up"]{
transform:translateY(60px);
}

[data-animation="fade-left"]{
transform:translateX(-60px);
}

[data-animation="fade-right"]{
transform:translateX(60px);
}

[data-animation="zoom"]{
transform:scale(.88);
}

[data-animation="blur"]{
filter:blur(15px);
}


[data-animation].show{
opacity:1;
transform:translate(0) scale(1);
filter:blur(0);
}


/* WHATSAPP FLUTUANTE */

.jrs-whatsapp{
position:fixed;
right:25px;
bottom:30px;
width:65px;
height:65px;
background:#25D366;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
z-index:1500;
box-shadow:0 10px 30px rgba(0,0,0,.25);
animation:jrsPulse 2s infinite;
}

.jrs-whatsapp img{
width:38px;
height:38px;
}


@keyframes jrsPulse{
0%{
transform:scale(1);
}
50%{
transform:scale(1.12);
}
100%{
transform:scale(1);
}
}


/* BOTÃO VOLTAR AO TOPO */

.jrs-scroll-top{
position:fixed;
left:25px;
bottom:35px;
width:50px;
height:50px;
border-radius:50%;
border:none;
background:var(--jrs-green);
color:#fff;
font-size:25px;
display:flex;
align-items:center;
justify-content:center;
opacity:0;
visibility:hidden;
transition:.4s;
z-index:1500;
}

.jrs-scroll-top.active{
opacity:1;
visibility:visible;
}


/* MODAL PREMIUM */

.jrs-modal{
position:fixed;
inset:0;
background:rgba(0,0,0,.65);
backdrop-filter:blur(12px);
display:flex;
align-items:center;
justify-content:center;
opacity:0;
visibility:hidden;
transition:.4s;
z-index:3000;
padding:20px;
}

.jrs-modal.active{
opacity:1;
visibility:visible;
}


.jrs-modal-content{
width:100%;
max-width:450px;
background:#fff;
padding:40px;
border-radius:25px;
position:relative;
box-shadow:var(--jrs-shadow);
transform:scale(.85) translateY(40px);
transition:.5s;
}


.jrs-modal.active .jrs-modal-content{
transform:scale(1) translateY(0);
}


.jrs-modal-close{
position:absolute;
right:20px;
top:15px;
border:none;
background:none;
font-size:35px;
color:#333;
}


.jrs-modal-content h2{
color:var(--jrs-green);
margin-bottom:25px;
}


.jrs-modal-content input,
.jrs-modal-content textarea,
.jrs-modal-content select{
width:100%;
border:1px solid #ddd;
padding:15px;
border-radius:12px;
margin-bottom:15px;
outline:none;
transition:.3s;
}


.jrs-modal-content input:focus,
.jrs-modal-content textarea:focus,
.jrs-modal-content select:focus{
border-color:var(--jrs-green);
box-shadow:0 0 0 3px rgba(37,93,51,.12);
}


.jrs-modal-content textarea{
height:110px;
resize:none;
}


/* HEADER BASE */

.jrs-header{
transition:.4s;
}

.jrs-header.scrolled{
background:rgba(37,93,51,.96);
backdrop-filter:blur(10px);
}


/* RESPONSIVO */

@media(max-width:767px){

.jrs-section{
padding:70px 0;
}

.jrs-container{
width:90%;
}

.jrs-modal-content{
padding:30px;
}

}