 /*
  Royal Window Cleaning Website
  © 2026 Royal Window Cleaning, Inc. All Rights Reserved
  Website by Thomas Hoerger
 */

*{
box-sizing:border-box;
}

/* ===== GLOBAL ===== */

body{
margin:0;
background:#f4f6fb;
color:#222;
font-family:Arial, Helvetica, sans-serif;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}

/* ===== HEADER ===== */

.site-header{
display:flex;
justify-content:space-between;
align-items:center;
background:#1e3a8a;
box-shadow:0 3px 10px rgba(0,0,0,.15);
position:sticky;
top:0;
z-index:1000;
transition:box-shadow .3s ease;
border-bottom:4px solid #C8102E;
padding:18px 25px;
}

.logo{
font-weight:bold;
font-size:18px;
color:white;
white-space:nowrap;
text-decoration:none;
}

/* NAV */

.main-nav{
display:flex;
gap:20px;
}

.main-nav a{
text-decoration:none;
color:white;
font-weight:bold;
border:2px solid transparent;
border-radius:5px;
transition:.2s;
padding:8px 12px;
}



/* ===== HERO ===== */

.hero{
background:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),
url("../images/window-cleaning-example-6.JPG");
background-size:cover;
background-position:center 25%;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:white;
height:auto;
min-height:500px;
padding:0 20px;
margin-bottom:0;
}

.hero-content{
max-width:700px;
padding:20px;
}

.hero h1{
font-size:44px;
margin-bottom:15px;
}

.hero p{
font-size:18px;
line-height:1.6;
margin-bottom:25px;
}

.cta-button{
background:#ff7a00;
padding:12px 25px;
border-radius:6px;
color:white;
text-decoration:none;
font-weight:bold;
}

/* ===== SERVICES GRID ===== */

.services{
text-align:center;
background:white;
border-top:1px solid #e6e6e6;
padding:35px 20px 25px;
}

.service-grid{
display:grid;
gap:30px;
grid-template-columns:repeat(2,1fr);
max-width:900px;
margin:auto;
}

.service-card{
background:white;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
padding:18px 16px;
}

/* ===== PAGE CONTENT ===== */

.about{
margin:auto;
text-align:center;
background:#f4f6fb;
max-width:900px;
padding:30px 20px;
padding-bottom:10px;
}

/* ===== SERVICE IMAGE ===== */

.service-image{
width:100%;
max-width:500px;
height:auto;
display:block;
margin:40px auto;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.15);
cursor:pointer;
}

/* ===== SERVICE LIST ===== */

.service-list{
max-width:400px;
margin:30px auto;
text-align:left;
font-size:18px;
line-height:1.8;
}

/* ===== BLIND REPAIR LAYOUT ===== */

.service-layout{
max-width:1100px;
margin:60px auto;
padding:0 20px;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
margin-top:20px;
padding-top:20px;
align-items:flex-start;
}

.service-text h1{
font-size:36px;
margin-bottom:20px;
}

.service-text p{
line-height:1.6;
margin-bottom:20px;
}

.icon-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:15px;
margin-top:20px;
}

.icon-card{
background:white;
padding:15px;
border-radius:8px;
box-shadow:0 5px 12px rgba(0,0,0,.08);
font-weight:bold;
}

/* ===== GALLERY ===== */

.gallery{
text-align:center;
background:#f4f6fb;
padding:35px 20px 25px;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
max-width:900px;
margin:auto;
}

.gallery-grid img{
width:100%;
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,.15);
}

/* ===== LIGHTBOX ===== */

.lightbox{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.8);
display:none;
align-items:center;
justify-content:center;
}

.lightbox img{
max-width:90%;
max-height:90%;
border-radius:10px;
}

/* ===== CONTACT ===== */

.contact{
padding:60px 20px;
text-align:center;
}

.contact-form{
max-width:500px;
margin:auto;
display:flex;
flex-direction:column;
gap:8px;
}

.contact-form input,
.contact-form textarea{
padding:12px;
border:1px solid #ccc;
border-radius:6px;
}

.contact-form button{
background:#1e3a8a;
color:white;
border:none;
padding:12px;
border-radius:6px;
}

/* ===== MAP ===== */

.map iframe{
width:100%;
height:350px;
border:none;
display:block;
}

/* ===== FOOTER ===== */

footer{
text-align:center;
padding:30px;
background:#1e3a8a;
color:white;
}


/* ===== ANIMATIONS ===== */

.fade{
opacity:0;
transform:translateY(30px);
transition:1s;
}

.show{
opacity:1;
transform:translateY(0);
}

/* ===== SPACING ===== */

section{
margin-bottom:0;
}

/* ===== MOBILE MENU ===== */

.menu-toggle{
display:none;
font-size:26px;
cursor:pointer;
color:white !important;
}

/* TRUST BAR */

.trust-bar{
background:#1e3a8a;
color:white;
padding:25px 10px;
}

.trust-container{
max-width:1100px;
margin:auto;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:20px;
text-align:center;
font-weight:bold;
}

/* REVIEWS */

.reviews{
padding:60px 20px;
text-align:center;
background:#f4f6fb;
}

.review-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
max-width:900px;
margin:auto;
}

.review-card{
background:white;
padding:20px;
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,.1);
}





.popup{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.6);
z-index:9999;
justify-content:center;
align-items:center;
}

.popup-content{
background:white;
padding:35px;
border-radius:10px;
width:90%;
max-width:450px;
position:relative;
box-shadow:0 10px 30px rgba(0,0,0,.25);
text-align:center;
}

.close-popup{
position:absolute;
top:10px;
right:15px;
font-size:28px;
cursor:pointer;
}

.quote-button{
position:fixed;
right:20px;
bottom:20px;
background:#df2332;
color:white;
padding:14px 18px;
border-radius:30px;
font-weight:bold;
z-index:10000;
cursor:pointer;
border:none;
text-decoration:none;
display:inline-block;
}

.quote-button:hover{
background:#8b1a29;
}

.service-card:hover{
transform:translateY(-5px);
box-shadow:0 10px 25px rgba(0,0,0,.15);
transition:.3s;
}

html{
scroll-behavior:smooth;
}

.service-card {
text-decoration: none;
color: inherit;
display: block;
}

.site-header {
position: relative;
}

/* CONTACT PAGE LAYOUT */

.contact-layout{
max-width:1100px;
margin:60px auto;
padding:0 20px;

display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:start;
}

.contact-info iframe{
width:100%;
height:350px;
border:none;
border-radius:10px;
margin-top:15px;
box-shadow:0 5px 15px rgba(0,0,0,.15);
}

.contact-form-wrapper{
background:white;
padding:30px;
border-radius:12px;
box-shadow:0 8px 25px rgba(0,0,0,.12);
max-width:480px;
}

.contact-form-wrapper h2{
margin-bottom:20px;
}

.contact-form input,
.contact-form textarea{
width:100%;
padding:12px;
border:1px solid #ccc;
border-radius:6px;
margin-bottom:8px;
font-size:14px;
}

.contact-form textarea{
min-height:130px;
resize:vertical;
}

.contact-form button{
background:#1e3a8a;
color:white;
border:none;
padding:14px;
border-radius:6px;
font-weight:bold;
cursor:pointer;
font-size:15px;
transition:.2s;
}

.contact-form button:hover{
background:#152c66;
}

.map{
background:#f4f6fb;
}

.bottom-info{
background:#ffffff;
padding:35px 20px;
text-align:center;
}

.bottom-info .content{
max-width:1100px;
margin:auto;
}


.subtitle{
font-size:18px;
color:#555;
margin-bottom:20px;
}

.hero-content{
margin-bottom:0;
}

.trust-bar{
margin-top:0;
}

.contact-form-wrapper h2{
margin-bottom:20px;
text-align:center;
}

.review-button{
display:inline-block;
margin-top:20px;
background:#C8102E;
color:white;
padding:12px 22px;
border-radius:6px;
text-decoration:none;
font-weight:bold;
font-size:15px;
}

.review-button:hover{
background:#8b1a29;
}

.main-nav a:hover{
border-color:#3152ad;
background-color: #3152ad;
}

.contact-form h2{
text-align:center;
margin-bottom:25px;
}

.contact-form h4{
margin-top:0;
margin-bottom:0;
font-size:15px;
}

.checkbox-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:6px 18px;
margin-top:4px;
margin-bottom:8px;
}

.contact-form label{
display:flex;
align-items:center;
gap:8px;
font-size:15px;
}

.contact-form select{
padding:12px;
border:1px solid #ccc;
border-radius:6px;
width:100%;
margin-bottom:15px;
background:white;
}

.checkbox-grid label{
display:flex;
align-items:center;
font-size:15px;
line-height:1.2;
cursor:pointer;
gap:6px;
}

.contact-form input[type="radio"]{
margin-right:8px;
}

.checkbox-grid input{
width:14px;
height:14px;
margin:0;
}

.radio-group{
display:flex;
flex-direction:column;
gap:6px;
align-items:flex-start;
margin-bottom:10px;
}

.radio-group label{
display:flex;
align-items:center;
font-size:15px;
cursor:pointer;
gap:6px;
}

.two-col{
display:grid;
grid-template-columns:1fr 1fr;
gap:15px;
width:100%;
margin-bottom:0px;
}

.two-col input{
width:100%;
box-sizing:border-box;
}

.radio-group input{
margin:0;
}
.contact-form input,
.contact-form textarea,
.contact-form select{
box-sizing:border-box;
}

.contact-form select{
padding:10px;
border:1px solid #ccc;
border-radius:6px;
width:100%;
margin-bottom:8px;
background:white;
}


/* SERVICE AREA MAP */

.map-section{
padding:60px 20px;
text-align:center;
background:#f4f6fb;
}



.map-box{
margin:auto;
background:#1e3a8a;
padding:15px;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.12);
max-width:1200px;
}

.map-box iframe{
width:100%;
height:420px;
border:none;
border-radius:8px;
}
.services,
.gallery,
.reviews,
.map-section{
padding:35px 20px;
}
.map-section{
padding:30px 20px;
}
section h2{
margin-bottom:20px;
}
.map-section h2{
font-size:24px;
margin-bottom:30px;
}

.bottom-info h2{
font-size:28px;
margin-bottom:10px;
}

.bottom-info p{
font-size:16px;
line-height:1.6;
margin:10px 0;
color:#444;
}

.subtitle{
font-size:17px;
color:#666;
margin-bottom:15px;
}


footer{
background:#2d4593;
color:white;
text-align:center;
padding:30px 20px;
font-size:15px;
line-height:1.8;
}

footer p{
margin:4px 0;
}

footer p:first-child{
font-weight:bold;
font-size:16px;
}

.review-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
max-width:1100px;
margin:auto;
}

.gallery-grid img{
width:100%;
height:200px;
object-fit:cover;
border-radius:10px;
}


.services-intro{
max-width:700px;
margin:10px auto 40px auto;
text-align:center;
color:#555;
line-height:1.6;
}
.service-icon{
font-size:36px;
margin-bottom:12px;
display:block;
}

.call-button{
background:#1e3a8a;
color:white;
bottom:85px;
}

.call-button:hover{
background:#152c66;
}

.call-button,
.quote-button{
width:100px;
text-align:center;
white-space:nowrap;
position:fixed;
right:18px;
font-weight:bold;
z-index:10000;
text-decoration:none;
display:inline-flex;
align-items:center;
justify-content:center;
box-shadow:0 6px 14px rgba(0,0,0,.25);
font-size:15px;
padding: 14px 30px;
border-radius:40px;
}


#quote{
scroll-margin-top:120px;
}

.required{
color:#df2332;
font-weight:600;
font-size:13px;
letter-spacing:.3px;
}

.optional{
color:#777;
font-size:13px;
font-weight:normal;
}

.input-group{
position:relative;
}

.required-badge{
position:absolute;
right:12px;
top:40%;
transform:translateY(-50%);
color:#df2332;
font-size:13px;
font-weight:bold;
}

.contact-info p{
max-width:700px;
margin:0 auto 15px auto;
text-align:center;
}
.contact-info h2{
max-width:700px;
margin:0 auto 15px auto;
text-align:center;
}
.contact-info h3{
max-width:700px;
margin:0 auto 15px auto;
text-align:center;
}

/* BEFORE AFTER SECTION */

.before-after-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:20px;
margin-top:0px;
}

.before-after-card img{
width:100%;
border-radius:10px;
max-height:300px;   /* makes images smaller */
object-fit:cover;
box-shadow:none;
}

.before-after-card h3{
text-align:center;
margin-bottom:8px;
}


.before-after-section{
max-width:1100px;
margin:60px auto;
padding:20px;
text-align:center;
}

.before-after-container{
display:flex;
flex-direction:column;
gap:15px;
}

/* WORK SLIDER */

.work-slider{
text-align:center;
padding:40px 20px;
}

.slider{
position:relative;
max-width:650px;
margin:25px auto;
overflow:hidden;
}

.slider img{
width:100%;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.15);
height:420px;
object-fit:cover;
transition:opacity .4s ease;
}

.slide-btn{
position:absolute;
top:50%;
transform:translateY(-50%);
background:rgba(0,0,0,.5);
color:white;
border:none;
font-size:26px;
padding:8px 14px;
cursor:pointer;
border-radius:6px;
}

.slide-btn:hover{
background:rgba(0,0,0,.8);
}

/* DOTS */

.slider-dots{
text-align:center;
margin-top:12px;
width:100%;
}

.slider-dots span{
height:10px;
width:10px;
margin:0 5px;
background:#bbb;
border-radius:50%;
display:inline-block;
cursor:pointer;
}

.slider-dots .active{
background:#1e3a8a;
}

footer a{
text-decoration:none;
color:inherit;
}
footer a:hover{
opacity:0.85;
}

.service-text{
text-align:center;
margin:0 auto;
max-width:700px;
}
.service-text a{
text-decoration:none;
color:#1e3a8a;   /* same blue as your theme */
font-weight:600;
}

.service-text a:visited{
color:#1e3a8a;   /* prevents purple visited links */
}

.service-text a:hover{
text-decoration:underline;
}

.trust-list{
list-style:none;
padding:0;
display:grid;
margin:25px auto;
max-width:650px;
grid-template-columns:1fr 1fr;
gap:12px 40px;
text-align:center;
}

.trust-list li{
font-size:15px;
line-height:1.4;
display:flex;
align-items:flex-start;
gap:8px;
text-align:left;
}

.star{
flex-shrink:0;
}

.gutter-carousel{
text-align:center;
padding:20px 20px 10px;
margin-top:0;
}

.carousel-container{
position:relative;
max-width:1000px;
margin:auto;
overflow:hidden;
}

.carousel-track{
display:flex;
gap:20px;
transition:transform 0.4s ease;
}

.carousel-track img{
width:280px;
height:200px;
object-fit:cover;
border-radius:10px;
}

.carousel-btn{
position:absolute;
top:50%;
transform:translateY(-50%);
background:#1e3a8a;
color:white;
border:none;
font-size:28px;
padding:8px 14px;
cursor:pointer;
border-radius:6px;
}


.gutter-slider{
position:relative;
max-width:650px;
margin:10px auto 10px auto;
}

.gutter-slider img{
width:100%;
object-fit:cover;
border-radius:12px;
height:auto;
box-shadow:none;
}

.gutter-slider img.active{
display:block;
}

.prev{
left:10px;
}

.next{
right:10px;
}

.gutter-carousel h2{
margin-bottom:15px;
}

/* GUTTER SLIDER */

.gutter-slider-section{
text-align:center;
padding:5px 20px 0;
margin-top:-50px;
}

.gutter-prev,
.gutter-next{
position:absolute;
top:50%;
transform:translateY(-50%);
background:rgba(0,0,0,.5);
color:white;
border:none;
font-size:26px;
padding:8px 14px;
cursor:pointer;
border-radius:6px;
}

.gutter-prev{ left:10px; }
.gutter-next{ right:10px; }

.gutter-prev:hover,
.gutter-next:hover{
background:rgba(0,0,0,.8);
}

.slider,
.gutter-slider{
position:relative;
overflow:hidden;
}
.service-icon{
font-size:42px;
color:#1e3a8a;
margin-bottom:14px;
}

.lightbox{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.9);
justify-content:center;
align-items:center;
z-index:9999;
padding:20px;
box-sizing:border-box;
}

.lightbox img{
max-width:95%;
max-height:95%;
object-fit:contain;
border-radius:6px;
}
.zoomable{
cursor:pointer;
}

html, body {
overflow-x: hidden;
}

.about a{
text-decoration:none;
color:#1e3a8a;
font-weight:600;
}

.about a:visited{
color:#1e3a8a;
}

.about a:hover{
text-decoration:underline;
}


/* VIDEO ONLY — does NOT affect images */

/* pressure washing video fix */

.service-video-box{
width:100%;
max-width:500px;
aspect-ratio:3/4;
margin:40px auto;
overflow:hidden;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.15);
position:relative;
justify-self:center;
}

.service-video{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%) scale(1.4);
height:100%;
width:auto;
}

/* BEFORE AFTER SECTION SIZE FIX */

.before-after-section{
max-width:1100px;
margin:0 auto;   /* pulls section higher */
padding:10px 20px;
text-align:center;
margin-top:-60px;

}

.service-text p:last-of-type{
margin-bottom:0;
}

#window-pricing{
scroll-margin-top:100px;
}

.fade{
  opacity:0;
  transform:translateY(15px); /* smaller movement */
  transition:opacity .6s ease, transform .6s ease;
  will-change: opacity, transform;
}

section{
  position: relative;
  z-index: 1;
}

footer{
  position: relative;
  z-index: 2;
}

.fade.show{
  opacity:1;
  transform:translateY(0);
}

@media (max-width:1440px){

.menu-toggle{
display:block;
}

.main-nav a{
padding:15px 25px;
border-bottom:1px solid #e5e5e5;
color:#222;
}

.main-nav.active{
display:flex;
}

.site-header{
flex-wrap:wrap;
position:relative;
}

/* dropdown menu */

.main-nav{
position:absolute;
background:#ffffff;
display:flex;
flex-direction:column;
gap:0;
max-height:0;
overflow:hidden;
transition:max-height .35s ease;
box-shadow:0 5px 10px rgba(0,0,0,.1);
top:75px;
left:0;
width:100%;
}

.main-nav.active{
max-height:500px;
}

}

/* tablet */

@media (max-width:900px){

.hero h1{
font-size:34px;
}

.hero p{
font-size:16px;
}

.service-layout{
grid-template-columns:1fr;
text-align:center;
}

.icon-grid{
grid-template-columns:1fr;
}

.contact-layout{
grid-template-columns:1fr;
gap:30px;
}

.contact-form-wrapper{
max-width:100%;

}

}

/* MOBILE */

@media (max-width:600px){


.call-button,
.quote-button{
padding:12px 45px !important;
font-size:13px;
min-width: 100px;
min-height: 40px;

}

.about{
margin-bottom:0;
padding:10px 15px;
}

section{
margin-bottom:20px;
}

.hero{
height:320px !important;
min-height:320px !important;
padding:20px 15px !important;
background-position:center 30%;
}

.hero h1{
font-size:28px;
}

.call-button,
.quote-button{
font-size:13px;
width:80px;
right:14px;
border-radius:40px;
display:inline-flex;
align-items:center;
justify-content:center;
padding:12px 26px;
line-height:1;          
height:42px;  
}

.call-button{
bottom:70px;

}

.quote-button{
bottom:18px;
}

.service-grid{
grid-template-columns:1fr;
gap:20px;
}

.service-card p{
font-size:15px;
line-height:1.5;
}

.service-icon{
font-size:28px;
margin-bottom:8px;
}

.contact-layout{
margin-top:10px;
}

.site-header{
position:sticky;
top:0;
z-index:9999;
padding:10px 16px;
}

.logo{
font-size:16px;
}

.menu-toggle{
font-size:22px;
}

.about h1{
font-size:26px;
margin-bottom:8px;
}

.about p{
font-size:15px;
}

.contact-info iframe{
height:250px;
}

.contact-info{
text-align:center;
}

.contact-info p{
text-align:center;
}

.contact-info h2{
text-align:center;
font-size:22px;
margin-top:10px;
margin-bottom:10px;
}

.about{
text-align:center;
padding:15px 15px 5px;
margin-top:-20px;
max-width:100%;
padding:20px 18px;
}

.about h1{
font-size:26px;
margin-bottom:10px;
line-height:1.3;
}

.about p{
font-size:15px;
line-height:1.5;
max-width:420px;
margin:0 auto 15px auto;
}

.contact-info{
text-align:center;
}

.contact-info p{
font-size:15px;
line-height:1.5;
margin-bottom:8px;
}

.about p{
margin-bottom:0px;
}

.contact-info h2{
margin-top:6px;
}

.main-nav{
position:absolute;
top:50px;
left:0;
width:100%;
background:#ffffff;
}

section{
padding:25px 15px;
}



.services,
.gallery,
.reviews,
.map-section{
padding:25px 15px;
}

.contact-layout{
margin:25px auto;
gap:25px;
}

h1{
font-size:26px;
margin-bottom:10px;
}

h2{
font-size:22px;
margin-bottom:12px;
}

p{
margin-bottom:10px;
line-height:1.5;
}

section{
margin-bottom:15px;
}

.services{
margin-top:0;
padding-top:10px;
padding-bottom:15px;
}

.services h2{
margin-top:0;
}

.trust-bar{
margin-bottom:0;
padding-bottom:15px;
}

.gallery{
padding-top:15px;
margin-top:0;
padding-bottom:20px;
}

.gallery h2{
margin-top:0;
}

section{
margin-bottom:10px;
}

.reviews{
padding-bottom:15px;
}

.map-section{
padding-top:15px;
margin-top:0;
}

.map-section h2{
margin-top:0;
}

section{
padding-top:20px;
padding-bottom:20px;
}

footer{
margin-top:0;
}

section{
margin-bottom:10px;
}

footer{
margin-bottom:0;
padding-bottom:40px;
}

body{
margin-bottom:0;
}

.bottom-info{
margin-bottom:0;
padding-bottom:10px;
padding-top:10px;
}

.bottom-info h2{
margin-top:10px;
}

.gallery-grid{
margin-bottom:0;
}

.before-after-grid{
grid-template-columns:1fr 1fr;
gap:12px;
margin-top:0;
}

.slider img{
height:260px;
}

.hero-content{
max-width:90%;
}

.hero h1{
font-size:24px;
margin-bottom:10px;
}

.hero p{
font-size:14px;
margin-bottom:15px;
}

.radio-group{
width:100%;
display:flex;
flex-direction:column;
align-items:flex-start;
gap:8px;
}

.radio-group label{
justify-content:flex-start !important;
display:flex;
align-items:center;
gap:8px;
width:100%;
}

.radio-group input[type="radio"]{
margin:0 6px 0 0;
flex-shrink:0;
}

.two-col{
grid-template-columns:1fr !important;
}

.radio-group input{
margin-right:6px !important;
}

.radio-group input[type="radio"]{
width:16px;
height:16px;
flex-shrink:0;
margin:0;
}

.about p{
font-size:15px;
line-height:1.6;
}

.contact-info a{
text-decoration:none;
color:inherit;
}

.trust-list{
text-align:center;
list-style:none;
padding:0;
margin:25px auto;
max-width:650px;
display:grid;
grid-template-columns:1fr 1fr;
gap:12px 40px;
}


.before-after-card img{
width:100%;
height:160px;
object-fit:cover;
}

.before-after-card h3{
font-size:14px;
margin-top:2px;
margin-bottom:4px;
}

.before-after-container{
padding-top:0;
margin-top:-18px;
gap:8px;
}

.service-text p:last-of-type{
margin-bottom:5px;
}

/* tighten text above the images */
.service-text p{
margin-bottom:6px;
}

.star{
  flex-shrink:0;
  width:20px;
}

.trust-list li{
display:flex;
align-items:flex-start;
gap:8px;
text-align:left;
}
}
