@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=Source+Sans+3:wght@200;300;400;500;600;700&display=swap');
:root{
  --dark:#182034;
  --primary:#FD5F58;
  --secondary:#54595F;
  --text:#7A7A7A;
  --accent:#61CE70;
  --check:#249C57;
  --sand:#EFEBE7;
  --white:#FFFFFF;
  --ink:#333333;
}
*{box-sizing:border-box}
body{margin:0;background:var(--white);color:var(--text);font:400 18px/1.6 "Source Sans Pro","Source Sans 3",Arial,sans-serif}
h1{font:400 35px/1.25 "Source Sans Pro","Source Sans 3",sans-serif;color:var(--white);margin:0 0 20px}
h2{font:300 36px/1.25 "Source Sans Pro","Source Sans 3",sans-serif;color:var(--secondary);text-align:center;margin:1.6em auto .7em}
h3{font:600 20px/1.3 "Source Sans Pro","Source Sans 3",sans-serif;color:var(--secondary);margin:.7em 0 .2em}
a{color:inherit}
header{background:var(--white);min-height:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px max(5vw,25px);max-width:1200px;margin:0 auto}
.logo img{display:block;width:140px;height:auto}
.btn{display:inline-block;border:0;border-radius:3px;background:var(--primary);color:#fff;text-decoration:none;font:700 18px/1.2 "Source Sans Pro","Source Sans 3",sans-serif;padding:10px 18px;cursor:pointer}
.btn:hover{filter:brightness(.96)}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--white);overflow:hidden;align-items:stretch}
.hero-copy{background:var(--dark);color:#fff;padding:35px}
.hero-copy h1{color:#fff}
.hero-copy .btn{background:var(--primary);max-width:45%;padding:12px 16px;font-size:17px}
.hero-points{display:flex;gap:22px;flex-wrap:wrap;margin:26px 0 0;padding:0;font:200 17px "Source Sans Pro","Source Sans 3",sans-serif;color:#fff}
.hero-points li{list-style:none;display:flex;align-items:center;gap:8px}
.hero-points svg{width:13px;height:13px;fill:var(--check);flex:none}
.hero-media{position:relative;min-height:0;background:url("/assets/hero-bg.webp") center center/cover no-repeat}
.hero-media img{position:absolute;right:23px;bottom:11px;width:20%;max-width:20%;height:auto;display:block}
.service-hero .hero-copy p:first-child{letter-spacing:.12em;font-weight:600}
main{max-width:1140px;margin:0 auto;padding:35px 25px 75px}
.cards,.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}
.cards article{text-align:center}
.cards img{width:100%;aspect-ratio:1;object-fit:cover}
.cards a{text-decoration:none}
.cards h3{font-size:20px}
.cards p,.benefits p{margin:0;color:var(--text);font-weight:400}
.benefits{text-align:center}
.benefits img{width:100px;height:100px;object-fit:contain}
.benefits h3{font:400 24px/1.3 "Playfair Display",serif;color:var(--secondary)}
.benefits p{font-weight:300}
.quote-form{max-width:820px;width:60%;margin:70px auto 15px;background:var(--dark);color:#fff;padding:35px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.quote-form h2{grid-column:1/-1;margin:0;text-align:center;font:400 32px "Playfair Display",serif;color:#fff}
.quote-form label{display:block;font:400 16px "Source Sans Pro","Source Sans 3",sans-serif;color:#fff}
.quote-form label:nth-of-type(4),.quote-form label:nth-of-type(5),.quote-form button{grid-column:1/-1}
input,select,textarea{width:100%;display:block;border:1px solid #b5bdc0;background:#fff;padding:11px;margin-top:5px;font:inherit;color:var(--ink)}
textarea{min-height:130px;resize:vertical}
input[type=file]{padding:8px}
.quote-form .btn{background:var(--primary);color:#fff}
.pledge{max-width:1100px;margin:70px auto}
.pledge-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:center;margin-top:25px}
.pledge-grid h2{text-align:left}
.pledge-grid ul{padding-left:20px;color:var(--text);font-weight:300;font-size:20px}
.pledge-grid li{margin:10px 0}
.pledge-grid img{width:100%;height:auto}
.testimonials{max-width:1100px;margin:70px auto}
.testimonials h2{font-size:24px;font-weight:600}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.testimonial-grid article{background:#fff;border:1px solid #e2ddd2;padding:25px;color:var(--text);font-weight:300;font-size:20px}
.testimonial-grid strong{display:block;margin-top:12px;color:var(--secondary)}
.quality{text-align:center;max-width:1000px;margin:70px auto}
.quality h2:first-child{font-size:36px;font-weight:500}
.quality h2:nth-of-type(2){font-size:24px;font-weight:600}
.brands{display:flex;flex-wrap:wrap;gap:25px;justify-content:center;align-items:center;margin-top:30px}
.brands img{width:150px;height:75px;object-fit:contain}
.service{max-width:900px}
.service>p{font-size:1.15rem}
.simple,.quote-page{max-width:900px;min-height:55vh;margin:auto;padding:70px 25px}
.simple h1,.quote-page>h1{text-align:center;color:var(--secondary)}
.area-list{columns:3;max-width:800px;margin:35px auto}
.area-list a{color:var(--secondary)}
footer{background:var(--white);color:var(--secondary);padding:35px max(5vw,25px) 25px;border-top:1px solid #eee}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr;gap:30px}
footer h2{color:var(--primary);text-align:left;font:600 18px "Source Sans Pro","Source Sans 3",sans-serif;margin:0 0 10px}
.footer-brand img{width:170px;height:auto}
.footer-brand p{margin:8px 0;font-weight:400;line-height:1.2;color:var(--secondary)}
footer nav{display:grid;gap:8px;align-content:start}
footer nav a{color:var(--secondary);text-decoration:none}
.copyright{grid-column:1/-1;text-align:center;margin:20px 0 0;color:var(--secondary)}
@media(max-width:767px){
  header{padding:8px 18px}
  .hero{grid-template-columns:1fr}
  .hero-copy .btn{max-width:100%}
  .hero-media{min-height:220px}
  .cards,.benefits,.testimonial-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .pledge-grid{grid-template-columns:1fr}
  .quote-form{padding:25px;grid-template-columns:1fr;width:100%}
  .quote-form h2,.quote-form label,.quote-form button{grid-column:auto}
  .area-list{columns:1}
  .footer-inner{display:block}
  footer nav{margin-top:22px}
}
@media(max-width:420px){.cards,.benefits,.testimonial-grid{grid-template-columns:1fr}}
