*{margin:0;padding:0;box-sizing:border-box}
:root{--red:#C8102E;--dark:#111;--yellow:#F5C518;--light:#f5f4ef}
body{font-family:'Barlow',sans-serif;background:#fff;color:#111;font-size:15px;overflow-x:hidden}

@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes growLine{from{width:0}to{width:140px}}
@keyframes pulseBtn{0%,100%{box-shadow:0 0 0 0 rgba(200,16,46,0.35)}70%{box-shadow:0 0 0 10px rgba(200,16,46,0)}}
@keyframes slideRight{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}
@keyframes cardIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

.fu1{animation:fadeUp .6s ease .1s both}.fu2{animation:fadeUp .6s ease .25s both}
.fu3{animation:fadeUp .6s ease .4s both}.fu4{animation:fadeUp .6s ease .55s both}
.fu5{animation:fadeUp .6s ease .7s both}.fu6{animation:fadeUp .6s ease .85s both}
.fu7{animation:fadeUp .6s ease 1s both}
.sr1{animation:slideRight .5s ease .1s both}.sr2{animation:slideRight .5s ease .25s both}
.ci1{animation:cardIn .5s ease .1s both}.ci2{animation:cardIn .5s ease .2s both}
.ci3{animation:cardIn .5s ease .3s both}.ci4{animation:cardIn .5s ease .4s both}
.ci5{animation:cardIn .5s ease .5s both}.ci6{animation:cardIn .5s ease .6s both}
.fi{animation:fadeIn .8s ease both}


nav{background:#111;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:56px;border-bottom:3px solid var(--red);position:sticky;top:0;z-index:99}
.logo{font-family:'Bebas Neue',sans-serif;font-size:1.35rem;letter-spacing:2px;color:#fff;text-decoration:none}
.logo span{color:var(--red)}
.nav-links{display:flex;gap:1.8rem;list-style:none}
.nav-links a{color:rgba(255,255,255,0.5);text-decoration:none;font-size:.72rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;transition:color .2s}
.nav-links a:hover{color:#fff}
.nav-phone{background:var(--red);color:#fff;text-decoration:none;padding:.42rem 1.1rem;font-weight:700;font-size:.78rem;border-radius:3px;letter-spacing:1px;animation:pulseBtn 2.5s ease 2s infinite;transition:background .2s}
.nav-phone:hover{background:#a50d24}


.hero{background:#111;color:#fff;text-align:center;padding:4rem 2rem 3.5rem;border-bottom:4px solid var(--red);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(200,16,46,0.04) 0,rgba(200,16,46,0.04) 1px,transparent 1px,transparent 55px),repeating-linear-gradient(90deg,rgba(200,16,46,0.04) 0,rgba(200,16,46,0.04) 1px,transparent 1px,transparent 55px);pointer-events:none}
.badge{display:inline-block;background:var(--red);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;padding:.3rem .9rem;border-radius:2px;margin-bottom:1.2rem}
.hero h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,8vw,5.5rem);line-height:.95;letter-spacing:4px;margin-bottom:.6rem}
.hero h1 span{color:var(--red)}
.redline{height:3px;background:var(--red);width:0;margin:.2rem auto .9rem;animation:growLine .8s ease 1s forwards}
.hero-sub{font-size:.92rem;color:rgba(255,255,255,.5);letter-spacing:1px;margin-bottom:.35rem}
.hero-tag{font-size:1.05rem;font-weight:600;color:var(--yellow);margin-bottom:.5rem}
.hero-areas{font-size:.68rem;color:rgba(255,255,255,.3);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:2rem}
.hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}
.btn-r{background:var(--red);color:#fff;text-decoration:none;padding:.8rem 2rem;font-weight:700;font-size:.82rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;transition:background .2s,transform .15s;display:inline-block}
.btn-r:hover{background:#a50d24;transform:translateY(-2px)}
.btn-o{border:2px solid rgba(255,255,255,.25);color:#fff;text-decoration:none;padding:.8rem 2rem;font-weight:600;font-size:.82rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;transition:border-color .2s,color .2s;display:inline-block}
.btn-o:hover{border-color:var(--yellow);color:var(--yellow)}
.hero-num{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;letter-spacing:5px;color:var(--yellow);text-decoration:none;display:block;transition:color .2s}
.hero-num:hover{color:#fff}
.hero-num-lbl{font-size:.6rem;color:rgba(255,255,255,.25);letter-spacing:3px;text-transform:uppercase;margin-top:.3rem}


.trust{background:var(--red);display:flex;justify-content:center;flex-wrap:wrap}
.ti{color:#fff;font-size:.68rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:.75rem 1.3rem;border-right:1px solid rgba(255,255,255,.2);transition:background .2s}
.ti:hover{background:rgba(0,0,0,.15)}
.ti:last-child{border-right:none}


.sec{padding:3rem 2rem}
.sec-alt{background:var(--light)}
.container{max-width:1100px;margin:0 auto}
.sec-lbl{font-size:.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--red);margin-bottom:.35rem}
.sec-title{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;letter-spacing:2px;margin-bottom:.8rem}
.sec-body{font-size:.85rem;color:#555;line-height:1.65;margin-bottom:1.5rem;max-width:560px}


.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:#ddd}
.svc{background:#fff;padding:1.6rem;border-left:3px solid transparent;transition:border-color .2s,transform .2s,background .2s;cursor:default}
.svc:hover{border-left-color:var(--red);background:#fafafa;transform:translateX(4px)}
.svc-dot{width:36px;height:36px;background:var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;transition:transform .2s}
.svc:hover .svc-dot{transform:scale(1.12)}
.svc-dot svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.svc h3{font-size:.84rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:.4rem;color:#111}
.svc p{font-size:.77rem;color:#666;line-height:1.58}
.svc-free{background:var(--red);color:#fff;padding:1rem 1.6rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.8rem;margin-top:1px}
.svc-free p{font-size:.77rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}


.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin-top:1.3rem}
.why-card{background:#fff;border:1px solid #e8e8e8;padding:1.3rem;border-radius:4px;transition:border-color .2s,transform .2s}
.why-card:hover{border-color:var(--red);transform:translateY(-3px)}
.why-num{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;color:var(--red);line-height:1;margin-bottom:.25rem}
.why-card h4{font-size:.78rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:.3rem}
.why-card p{font-size:.76rem;color:#666;line-height:1.58}


.cta{background:#111;color:#fff;padding:2.5rem 2rem;text-align:center;border-top:4px solid var(--red)}
.cta h2{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;letter-spacing:2px;margin-bottom:.4rem}
.cta p{font-size:.85rem;opacity:.45;margin-bottom:1.2rem}
.cta-num{font-family:'Bebas Neue',sans-serif;font-size:2.8rem;letter-spacing:5px;color:var(--yellow);text-decoration:none;display:block;margin-bottom:1.4rem;transition:color .2s}
.cta-num:hover{color:#fff}


.areas-wrap{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}
.area{background:#fff;border:1px solid #ddd;padding:.48rem 1rem;font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;color:#333;transition:border-color .2s,color .2s}
.area:hover{border-color:var(--red);color:var(--red)}


.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}
.c-info{display:flex;flex-direction:column;gap:1.1rem;margin-top:.6rem}
.c-row{display:flex;gap:.8rem;align-items:flex-start}
.c-dot{width:8px;height:8px;background:var(--red);border-radius:50%;margin-top:5px;flex-shrink:0}
.c-lbl{font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:#aaa;margin-bottom:2px}
.c-val{font-size:.9rem;font-weight:500}
.c-val a{color:var(--red);text-decoration:none}
.form-box{background:var(--light);padding:1.8rem;border-radius:4px;border:1px solid #e5e5e5}
.fg{margin-bottom:.95rem}
.fg label{display:block;font-size:.58rem;letter-spacing:2px;text-transform:uppercase;color:#999;margin-bottom:.3rem}
.fg input,.fg textarea,.fg select{width:100%;background:#fff;border:1px solid #ddd;color:#111;padding:.65rem .9rem;font-family:'Barlow',sans-serif;font-size:.85rem;border-radius:3px;outline:none;transition:border-color .2s}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--red)}
.fg textarea{height:95px;resize:vertical}
.fg select{appearance:none;cursor:pointer}
.submit-btn{width:100%;background:var(--red);color:#fff;border:none;padding:.9rem;font-family:'Barlow',sans-serif;font-size:.82rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;border-radius:3px;cursor:pointer;transition:background .2s,transform .15s}
.submit-btn:hover{background:#a50d24;transform:translateY(-1px)}
.toast{display:none;background:#1a3d1a;color:#fff;padding:.85rem 1rem;border-radius:3px;font-size:.82rem;font-weight:600;margin-top:.8rem;border-left:4px solid #4caf50;animation:fadeIn .4s ease}

footer{background:#0a0a0a;color:#fff;padding:1.6rem 2rem;text-align:center;border-top:3px solid var(--red)}
.f-logo{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:2px;margin-bottom:.35rem}
.f-logo span{color:var(--red)}
.f-links{display:flex;justify-content:center;gap:1.4rem;margin:.6rem 0;flex-wrap:wrap}
.f-links a{color:rgba(255,255,255,.3);text-decoration:none;font-size:.68rem;letter-spacing:1px;text-transform:uppercase;transition:color .2s}
.f-links a:hover{color:var(--red)}
footer p{font-size:.66rem;opacity:.25}

@media(max-width:700px){
  .hero h1{font-size:2.8rem}
  .contact-grid{grid-template-columns:1fr}
  .nav-links{display:none}
  .ti{font-size:.6rem;padding:.65rem .75rem}
  .sec{padding:2.2rem 1.2rem}
}