*{box-sizing:border-box}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:#1f1f1f;
  background:#fff;
  line-height:1.6;
  overflow-x:hidden;
}
img{max-width:100%;height:auto}
a{text-decoration:none;color:inherit}

header,.header,.topbar{
  background:#111;
  color:#fff;
  text-align:center;
}
.logo img{
  max-height:90px;
  object-fit:contain;
  margin:15px auto;
  display:block;
}
.phone-box,
.header-phone,
.tel-btn{
  display:inline-block;
  background:#d80000;
  color:#fff!important;
  padding:16px 45px;
  border-radius:12px;
  font-size:28px;
  font-weight:800;
  margin:15px auto 25px;
}
nav,.menu{
  background:#222;
  border-top:3px solid #d80000;
  text-align:center;
  padding:18px 10px;
}
nav a,.menu a{
  display:inline-block;
  color:#fff!important;
  font-weight:700;
  font-size:20px;
  margin:10px 22px;
}
nav a:hover,.menu a:hover{color:#ff3b3b!important}

section,main,.container,.content{
  max-width:1100px;
  margin:0 auto;
  padding:35px 18px;
}
h1{
  font-size:42px;
  line-height:1.2;
  margin:25px 0 18px;
  font-weight:900;
}
h2{
  font-size:30px;
  line-height:1.3;
  margin:28px 0 15px;
  font-weight:800;
}
h3{font-size:24px}
p{
  font-size:19px;
  margin:0 0 18px;
}
.btn,.button,
a[href^="tel:"],
a[href*="wa.me"]{
  display:inline-block;
  background:#d80000;
  color:#fff!important;
  padding:14px 24px;
  border-radius:10px;
  font-weight:800;
  margin:8px 8px 8px 0;
}
.hero{
  background:#f5f5f5;
  padding:45px 18px;
  text-align:center;
}
.hero h1{
  font-size:46px;
}
.hero p{
  max-width:850px;
  margin:0 auto 20px;
}

@media(max-width:768px){
  body{font-size:16px}
  .phone-box,
  .header-phone,
  .tel-btn{
    font-size:22px;
    padding:14px 28px;
    width:80%;
  }
  nav a,.menu a{
    font-size:18px;
    margin:8px 12px;
  }
  section,main,.container,.content{
    padding:25px 15px;
  }
  h1{
    font-size:34px;
    line-height:1.25;
  }
  h2{
    font-size:26px;
  }
  p{
    font-size:18px;
  }
}

@media(max-width:480px){
  h1{font-size:30px}
  h2{font-size:24px}
  nav a,.menu a{
    display:inline-block;
    width:42%;
    margin:8px 4px;
  }
  .phone-box,
  .header-phone,
  .tel-btn{
    width:86%;
    font-size:20px;
  }
}
body > h1,
body > h2,
body > p,
body > a {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 18px;
  padding-right: 18px;
}

body > h1 {
  font-size: 34px !important;
  line-height: 1.25 !important;
}

body > h2 {
  font-size: 26px !important;
  line-height: 1.3 !important;
}

body > p {
  font-size: 18px !important;
}

@media(max-width:480px){
  body > h1 {
    font-size: 28px !important;
  }

  body > h2 {
    font-size: 23px !important;
  }

  body > p {
    font-size: 17px !important;
  }
}