/* Homepage */
.hero.home-top { background: url(/assets/bg/street-blue-duotone-lrg.jpg) no-repeat bottom center; background-size: cover; overflow: hidden;}
.home-top .van-wrapper .van { position: relative; z-index: 1; animation: bounce-van 1.1s cubic-bezier(0.190, 1.000, 0.220, 1.000) both;}
.home-top .van-wrapper { margin: 50px 0 30px; display: inline-block; position: relative; }
.home-top .van-wrapper .shadow { position: absolute; bottom: 0; left: 0; right: 0;animation: bounce-shadow 1.1s cubic-bezier(0.190, 1.000, 0.220, 1.000) both;}

ul.flashes { list-style-type: none; display: inline-block; }
.flashes li, .main .flashes li { background: #d90011; color: #fff; margin: .35em; padding: 0.35em 1.7em 0.35em 1.1em; border-radius: 5px; font-style: italic; font-weight: 700; font-size: 2.6em; transform: skew(-14deg) translateX(0);}
.flashes li span { display: inline-block; transform: skew(14deg);}
.main .flashes li:before { display: none; }
.hero.home-top ul.flashes { position: absolute; top: 80px; right: 10px; z-index: 4; }

/*
.home-top .flashes li { transform: skew(-14deg) translateX(200%); }
.home-top .flashes li:nth-child(1) { animation: 0.8s ease 1s 1 both slideInRight; }
.home-top .flashes li:nth-child(2) { animation: 0.8s ease 1.3s 1 both slideInRight; }
.home-top .flashes li:nth-child(3) { animation: 0.8s ease 1.6s 1 both slideInRight; }
.home-top .flashes li:nth-child(4) { animation: 0.8s ease 1.9s 1 both slideInRight; }
.home-top .flashes li:nth-child(5) { animation: 0.8s ease 2.2s 1 both slideInRight; }
@keyframes slideInRight {
0% { transform: skew(-14deg) translateX(200%); }
100% { transform: skew(-14deg) translateX(0); }
}
*/
.flashes li[data-aos=flashes-slide-left], .main .flashes li[data-aos=flashes-slide-left] {
transform: skew(-14deg) translateX(-200%);
opacity: 0;
transition-property:transform, opacity;
}
.flashes li[data-aos=flashes-slide-left].aos-animate, .main .flashes li[data-aos=flashes-slide-left].aos-animate {
opacity: 1;
transform: skew(-14deg) translateX(0);
}
.flashes li[data-aos=flashes-slide-right] {
transform: skew(-14deg) translateX(200%);
opacity: 0;
transition-property:transform, opacity;
}
.flashes li[data-aos=flashes-slide-right].aos-animate {
opacity: 1;
transform: skew(-14deg) translateX(0);
}


@keyframes bounce-van {
0% {
-webkit-transform: translateY(-200%);
transform: translateY(-200%);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
opacity: 1;
}
24% {
opacity: 1;
}
65% {
-webkit-transform: translateY(-15%);
transform: translateY(-15%);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
82% {
-webkit-transform: translateY(-9px);
transform: translateY(-9px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
93% {
-webkit-transform: translateY(-6px);
transform: translateY(-6px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
55%,75%,87%,100% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
opacity: 1;
}
}
@keyframes bounce-shadow {
0% {
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
opacity: 0;
}
50% {
opacity: 0;
}
65% {
opacity: 0.7;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
82% {
opacity: 0.8;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
93% {
opacity: 0.9;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
55%,75%,87%,100% {
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
opacity: 1;
}
}
.banner-flash { background: #d90011; color: #fff; margin: .35em; padding: 1em 1.7em 1em; border-radius: 5px; text-align: center; margin: 0 0 4em;}
.banner-flash p { margin: 0; font-weight: 500; font-size: 2.2em; }
.banner-flash a:link, .banner-flash a:visited { color: #fff; font-weight: 700; white-space: nowrap; }

.team-group { margin-top: -10px; }
.team-group img { width: 100%; display: block; }

.overview-intro { background: #023c7b; overflow: hidden;}
.overview-intro h1 { margin-top: 1em;}
.middle-circle .inner { max-width: 720px; position: relative; z-index: 2; }
.overview-intro .middle-circle { width: 80%; max-width: 1020px; height: 100%; margin: -50px auto; position: relative; z-index: 2; padding: 100px 70px 80px; border-radius: 50%; }
.overview-intro .middle-circle:before { content: ''; display: block; position: absolute; z-index: 1; top: 50%; left: 50%; width: 100%; height: 0; padding-top: 100%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); border-radius: 50%; background: #ededed; -webkit-box-shadow: 0 0 40px rgba(0,0,0,0.6); box-shadow: 0 0 40px rgba(0,0,0,0.6);}
.overview-van-left, .overview-van-right { position: absolute; top: 50%; z-index: 0;}
.overview-van-left { left: 0; -webkit-transform: translate(-410px, -50%); -ms-transform: translate(-410px, -50%); transform: translate(-410px, -50%); }
.overview-van-right { right: 0; -webkit-transform: translate(410px, -50%); -ms-transform: translate(410px, -50%); transform: translate(410px, -50%); }

[data-aos=overview-van-left], [data-aos=overview-van-right] {
transform: translate(0, -50%);
transition-property:transform
}
[data-aos=overview-van-left].aos-animate {
transform: translate(-410px, -50%);
}
[data-aos=overview-van-right].aos-animate {
transform: translate(410px, -50%);
}


.flipping-cards { padding: 0 0.3%; }
.flipping-cards { max-width: 1420px; margin: 0 auto; padding: 0 20px; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }
.service-cards { max-width: 1360px; }
.card-wrapper { display: inline-block; -webkit-perspective: 1000px; perspective: 1000px; -webkit-transform: rotateY(0.01deg); transform: rotateY(0.01deg); }
.service-cards .card-wrapper { -webkit-flex: 0 1 31.5%; -ms-flex: 0 1 31.5%; flex: 0 1 31.5%; width: 31.5%; padding: 4px; margin: 20px 0; text-align: center; }
.card-wrapper .card { position: relative; cursor: pointer; -webkit-transition-duration: 0.6s; transition-duration: 0.6s; -webkit-transition-timing-function: ease-in-out; transition-timing-function: ease-in-out; -webkit-transform-style: preserve-3d; transform-style: preserve-3d; width: 100%; padding-top: 100%; }
.card-wrapper .card .front, .card-wrapper .card .back { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: rotateX(0deg);transform: rotateX(0deg); -webkit-transform-style: preserve-3d; transform-style: preserve-3d; }
.card-wrapper .card .front { z-index: 2; }
.card-wrapper .card .back { -webkit-transform: rotateY(180deg); transform: rotateY(180deg); background: #888; color: #fff; text-align: center;}
.card-wrapper:hover .card { -webkit-transform: rotateY(180deg); transform: rotateY(180deg); }
.card-wrapper.spacer { height: 1px; padding: 0; }
.card .front, .card .back { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }

.service-cards .card .front { background: url(/assets/bg/logo-roundel-lrg.png) no-repeat 0 0; background-size: cover; }
.service-cards .card p { color: #fff; position: absolute; font-size: 1.7em;}
.service-cards .card p.text { top: 64%; max-width: 60%; }
.service-cards .card .service-icon { position: absolute; top: 11%; width: 34%; image-rendering: -webkit-optimize-contrast; }
.service-cards .card h4 { position: absolute; top: 30%; font-size: 2.9em; }
.service-cards .card.twolines .service-icon { top: 9%; }
.service-cards .card.twolines h4 { top: 25%; }
.service-cards .card .back h4 { color: #fff; }
.service-cards .card p.mob-btn { top: 59%; font-size: 1.4em; display: none; }
.service-cards .card p.mob-btn .btn { padding: .5em 26px .6em; }
.service-cards .card p.desk-btn { top: 54%; }
.isTouch .service-cards .card p.mob-btn { display: block; }
.isTouch .service-cards .card p.text { top: 72%; max-width: 60%; font-size: 1.6em; line-height: 1.2; }

.service-cards .card .back { background-repeat: no-repeat; background-size: cover; }
.service-cards .drain-cleaning .back { background-image: url(/assets/photos/cards/drain-cleaning.jpg); }
.service-cards .cctv-inspections .back { background-image: url(/assets/photos/cards/cctv-inspections.jpg); }
.service-cards .drain-repairs .back { background-image: url(/assets/photos/cards/drain-repairs.jpg); }
.service-cards .water-jetting .back { background-image: url(/assets/photos/cards/water-jetting.jpg); }
.service-cards .septic-tanks .back { background-image: url(/assets/photos/cards/septic-tanks.jpg); }
.service-cards .pipeline .back { background-image: url(/assets/photos/cards/pipeline-rehabilitation.jpg); }

.why-rr, .commercial-services .cols { -webkit-justify-content: space-between; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; margin-bottom: 25px; }
.why-rr .col { max-width: 280px; padding-right: 20px; }
.why-rr .icon a, .icon span { display: block; width: 160px; height: 131px; background-repeat: no-repeat; margin-left: -20px; text-decoration: none; }
.icon-trusted-roundel, .icon-sameday-roundel { background-image: url(/assets/icons/trusted-roundel-sprite.png); background-size: auto 131px; background-position: -160px; }
.icon-sameday-roundel { background-image: url(/assets/icons/same-day-roundel-sprite.png); }
.icon-trusted-roundel:hover, .icon-trusted-roundel:focus { animation: trusted 1.0s steps(2) infinite;}
.icon-sameday-roundel:hover, .icon-sameday-roundel:focus { animation: trusted .25s steps(2) infinite;}
@keyframes trusted {
0% { background-position: 0px; }
100% { background-position: -320px; }
}
.icon .icon-7days-roundel { background-image: url(/assets/icons/7-days-roundel-sprite.png); background-position: -1760px 0; }
.icon .icon-7days-roundel:hover, .icon .icon-7days-roundel:focus { animation: seven 6.0s steps(12) infinite;}
@keyframes seven {
00% { background-position: 0; }
100% { background-position: -1920px; }
}
.why-rr h3 { margin-bottom: 0.3em; }
.why-rr a.btn { margin-left: 0; }

section.commercial-services { background: #25292f url(/assets/bg/dkgrey-with-icons.png) no-repeat center center; background-size: cover; padding-bottom: 60px;}
.commercial-services .col-text { padding-right: 50px;}
.cols.comm-services-overview .col { -webkit-flex: 1 1 40%; -ms-flex: 1 1 40%; flex: 1 1 40%; }
.cols.comm-services-overview .col-text { -webkit-flex: 1 1 60%; -ms-flex: 1 1 60%; flex: 1 1 60%; }

.cta-call { padding: 0; margin-bottom: 40px; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; position: relative; min-height: 255px;}
.cta-call-img { -webkit-flex: 0 1 auto; -ms-flex: 1 1 100%; flex: 0 0 auto; position: relative; z-index: 2; }
.cta-call-inner { -webkit-flex: 1 1 100%; -ms-flex: 1 1 100%; flex: 1 1 100%; }
.cta-call .call-strapline { font-style: italic; font-weight: 700; font-size: 2.8em; line-height: 1.3; background: #d90011; color: #fff; padding: 16px 10px; margin: .65em 0; text-align: center; position: relative;}
.cta-call .call-strapline:before { content: ''; display: block; position: absolute; top: 0; bottom: 0; left: -150px; width: 150px; background: #d90011; }
.cta-call .call-strapline a:link { font-weight: 700; color: #fff; }
.cta-call .call-services { font-size: 1.1em; max-width: 700px; margin: 0 auto; padding-left: 10px;}
.cta-call .call-services p { margin: 0.5em 0;}
.cta-call ul { -webkit-columns: 3; -moz-columns: 3; columns: 3; margin: 0 80px 0 0;}
.cta-call a { white-space: nowrap; }

section.book-service { min-height: 600px; position: relative; padding: 0; } 
.book-service:before { content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url(/assets/bg/city.jpg) no-repeat top center; background-size: cover; -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 71%); clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 71%); } 
.avifsupport .book-service:before { background-image: url(/assets/bg/city.avif); } 
.book-service .inner-mid { padding: 80px 20px 250px; min-height: 700px; }

.service-finder-outer { background: #072b68; color: #fff; padding: 30px 35px; width: 65%; margin: 0; }
.service-finder-outer h2 { color: #fff; }
.service-map { width: 60%; background: #fff; border-radius: 50%; position: absolute; right: 5px; top: -15px; -webkit-box-shadow: 0 15px 25px rgba(0,0,0, 0.3); box-shadow: 0 15px 25px rgba(0,0,0, 0.3);}
.service-finder { background: #fff; padding: 25px 25px 20px; max-width: 55%; }
.service-finder select { width: 100%; }
p#bookbutton { margin-bottom: 0;}

.timeline { overflow-x: scroll; padding-top: 15px; margin-top: 35px; -webkit-overflow-scrolling: touch; }
.js .timeline { scrollbar-width: none; cursor: -webkit-grab; cursor: grab; }
.js .timeline::-webkit-scrollbar { display: none; }
.timeline ul { float: left; background: rgba(0,0,0,0.05); display: -ms-flexbox; display: -webkit-flex; display: flex; min-width: 100%; padding: 0 0 0 110px; margin: 0; border-bottom: 1px solid #072b68; }
.timeline li { list-style-type: none; border-left: 1px solid #072b68; color: #072b68; position: relative; padding: 0 50px 32px 0; }
.timeline .year { display: inline-block; width: 80px; height: 80px; border-radius: 50%; background: #072b68; color: #fff; text-align: center; font-weight: 500; font-size: 1.5em; padding-top: 25px; position: absolute; top: -14px; left: -40px; }
.main .timeline li:before { display: none; }

.timeline li > div { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.timeline li .hor { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; width: 420px; max-width: 420px; }
.timeline li .vert { -webkit-align-items: flex-end; -ms-flex-align: end; align-items: flex-end; width: 480px; max-width: 480px; }
.timeline .vert .img { width: 200px; flex: 0 0 210px;}
.timeline .vert .text { width: 200px; padding-left: 18px; }
.timeline p { margin: 0; line-height: 130%;}
.timeline .hor .text { width: 240px; padding: 12px 0 0 18px; }
.scrollindicator { text-align: center; padding-top: 8px;}

.hero.service { background: #d90011; background: -o-linear-gradient(289deg, rgb(176,00,14) 5%, rgb(217,0,17) 40%); background: linear-gradient(161deg, rgb(176,00,14) 5%, rgb(217,0,17) 40%); color: #fff; }
.hero.service.commercial { background: #25292f; background: -o-linear-gradient(289deg, rgb(31,34,39) 5%, rgb(37,41,47) 40%); background: linear-gradient(161deg, rgb(31,34,39) 5%, rgb(37,41,47) 40%); }
.hero.service h1 { color: #fff;}
.hero.service h1:after { background: #c8b1b3; }
.service-intro { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.service-intro .text, .service-intro .img { -webkit-flex: 0 0 50%; -ms-flex: 0 0 50%; flex: 0 0 50%; }
.service-intro .img { overflow: hidden; }
.service-intro .icon img { margin-left: -28px;}
.service-intro .text .inner { max-width: 570px; margin: 0 20px 0 auto; padding: 70px 20px 40px;}
.service-intro .text .inner p { max-width: 460px; }
.service-intro h1 { margin: 0; }
.cctv .service-intro .icon img { margin-left: -25px; }
.jetting .service-intro .icon img { margin-left: -21px; }
.pipeline .service-intro .icon img { margin-left: -4px; }

.expect-list { list-style-type: none; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; padding: 0; margin: 0 0 4em; }
.expect-list li { background: #fff; border-radius: 5px; box-shadow: 0 0 10px rgba(0,0,0,0.15); padding: 1.2em 0; flex: 0 0 24%; position: relative; }
.expect-list li:before { content: ''; display: block; position: absolute; bottom: 30px; left: -55px; width: 100px; height: 50px; mix-blend-mode: multiply;background: #d90011;  border-radius: 5px; transform: skew(-14deg); transition-property: opacity; transition-duration: .4s; transition-delay: .4s;}
.expect-list li.aos-init:before { opacity: 0; }
.expect-list li.aos-animate:before { opacity: 1; }

.expect-list li:first-child:before { display: none; }
.expect-list .num { font-size: 6em; font-style: italic; font-weight: 800; margin: -5px 0 0; color: #a3a3a2; line-height: 1; padding: 0 0 0 0.15em; background: url(/assets/icons/what-to-expect.png) no-repeat 64px 10px; background-size: 1.25em; }
.expect-list h3 { font-size: 1.1em; padding: 0 1.2em 0 4em; margin: 0.2em 0 0.6em; }
.expect-list p { padding: 0 1.2em 0 4.4em; line-height: 1.3; margin: 0;}
.expect-list .expect1 { z-index: 10; }
.expect-list .expect2 { z-index: 8; }
.expect-list .expect3 { z-index: 6; }
.expect-list .expect2 .num { background-position: 68px -0.95em; }
.expect-list .expect3 .num { background-position: 68px -1.97em; }
.expect-list .expect4 .num { background-position: 68px -3em; }

.faq-wrapper { margin-top: 30px; }
.faq-wrapper.inner-mid { padding: 40px 80px; }
.faq-wrapper .logo { float: right; margin-left: 12px; }
.faq-wrapper h2 { margin: 0.2em 0 1.5em; }

ul.accordion { padding: 0; }
ul.accordion > li:before { display: none; }
.accordion h4 { color: #072b68; font-style: normal; cursor: pointer; font-size: 1.3em; position: relative; padding: 6px 28px 6px 0; margin: 0 0 0.5em;}
.accordion h4:after { content: ''; display: block; position: absolute; right: 0; top: 10px; width: 1px; height: 1px; border: 11px solid transparent; border-top-color: #6d6d6d; 
transform-origin: center 5px; transform: rotate(180deg); transition: all 0.2s; }
.accordion h4:hover:after { border-top-color: #bd000f; scale: 1.1;}
ul.accordion > li { border-bottom: 1px solid #6d6d6d; padding: 0 0 10px; margin: 8px 0 20px; }
.accordion li.collapse h4:after { transform: rotate(0); }
.accordion li div { padding-bottom: 20px; }

.hero.about-top { background: #163e6f url(/assets/bg/street-blue-duotone-with-van-lrg.jpg) no-repeat bottom center; background-size: cover;}
.avifsupport .hero.about-top { background-image: url(/assets/bg/street-blue-duotone-with-van-lrg.avif); }
.hero.articles-top { background: #163e6f url(/assets/bg/articles-blue-duotone-cut.jpg) no-repeat bottom center; background-size: cover;}
.hero .hero-intro { max-width: 550px; color: #fff; padding: 128px 0; margin-left: 40px; }
.hero .hero-intro h1 { color: #fff; }
.hero .hero-intro h1:after { background: #cbb4b6; }
.hero .inner-mid { padding: 0 20px; }
.hero.articles-top .hero-intro { padding-bottom: 220px; margin-left: 0;}

.hero-general { background: #eaecef; color: #072b68; }
.hero.hero-general .hero-intro { padding: 80px 0 70px; margin: 0; }
.hero-general .hero-intro h1 { color: #072b68; }
.hero-general .hero-intro h1:after { background: #072b68; }

.main .how-it-works-lrg { padding: 55px 50px; }
.how-it-works-lrg .inner-mid { padding: 0; }
.how-it-works-lrg h2 { font-size: 3em;}
.how-it-works-lrg h3 { font-size: 2em; color: #bd000f; }
.how-it-works-lrg .intro { padding: 32px 36px; margin: 0 0 50px; }
.how-it-works-lrg .intro > div, .how-it-works-lrg-part { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center;}
.how-it-works-lrg .intro .image { min-width: 416px; }
.how-it-works-lrg .intro .text { padding: 0 80px 0 50px;}
.how-it-works-lrg .intro .text p { margin: 0.85em 0;}
.how-it-works-lrg-part .text { padding-right: 80px;}
.how-it-works-lrg-part .icon { min-width: 122px; }
.service-icon-roundel { width: 122px; height: 122px; border: 5px solid #d90011; border-radius: 50%; background-repeat: no-repeat; background-size: 120px; }
.service-icon-roundel.cctv { background-image: url(/assets/icons/services/red/cctv-inspections.png); background-position: center 15px;}
.service-icon-roundel.jetting { background-image: url(/assets/icons/services/red/water-jetting.png); background-size: 108px; background-position: center center;}
.service-icon-roundel.pipeline { background-image: url(/assets/icons/services/red/pipeline-rehabilitation.png); background-size: 104px; background-position: center 17px;}


/* About */
.jingle-wrapper { background: #072b68 url(/assets/bg/blue-headphones.png) no-repeat top center; padding: 1px 0 1px; color: #fff;}
.jingle-wrapper:before { content: ''; display: block; width: 60%; position: absolute; top: 0; bottom: 0; background: url(/assets/bg/logo-watermark-lrg.png) no-repeat left center; background-size: 100%;}
.jingle { max-width: 370px; margin: 330px auto 0; text-align: center;}
.jingle-wrapper .cols { -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin-bottom: 10px;}
.jingle-wrapper .col:first-child { flex: 0 0 55%;}
.jingle-wrapper .col:last-child { flex: 0 0 45%;}
.jingle .btn { min-width: 140px; }
.jingle p { font-size: 1.9em; }
.jingle a { font-weight: 700; }
.jingle h2:after { margin-left: auto; margin-right: auto; }

.team-list { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 0; margin: 0;}
.main .team-list li.col { margin-bottom: 0; line-height: 1.35; font-size: 1em; flex: 1 1 33.33%; min-width: 220px; }
.main .team-list li:before { display: none; }
section.team-section { overflow: hidden; }

.cols.two-cols .col.team-heading { flex: 1 1 auto; min-width: 190px; max-width: 335px; }
.cols.two-cols .col.team-wrapper { flex: 1 1 50%; min-width: 765px; }
.person { flex: 0 0 255px; padding: 0 0 24px 30px;}
.person.spacer { padding: 0; }
.person .bio { display: none; }
.person > div { position: relative; overflow: hidden; display: inline-block;}
.person img { display: block;}
.person .team-title { background: #072b68; color: #fff; padding: 15px 44px 24px 16px; font-size: 1.1em; position: absolute; bottom: 0; width: 100%; transform: translateY(100%); transition: all .3s; }
.person.with-bio .team-title:after { content: ''; display: inline-block; width: 32px; height: 20px; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); background: url(/assets/icons/common.png?) no-repeat 0 -300px; background-size: 100px;}
.person.with-bio > div { cursor: pointer; }
.person.with-bio.open > div:after { content: ''; display: block; width: 1px; height: 1px; position: absolute; right: 50%; bottom: -36px; transform: translateX(50%);border: 18px solid transparent; border-top-color: #072b68;}
.person.with-bio.open > div { overflow: visible; }

.person div:hover .team-title, .person div:focus .team-title, .person.open .team-title { transform: none; }
.team-title p { line-height: 1.3; letter-spacing: 0.3px; }
.person .name { text-transform: uppercase; font-size: 1.7em; margin: 0 0 0.3em; }
.person .role { margin: 0 0 0.3em; font-size: 1.3em; }

.bio-wrapper { flex: 1 0 100%; position: relative; top: -10px; display: none; padding-left: 30px;}
.bio-outer { background: #ededed; padding: 1px; }
.bio-wrapper.bio-open { display: block; }
.bio-inner { display: none; }
.bio-wrapper .two-cols { -webkit-align-items: center; -ms-flex-align: center; align-items: center; position: relative; }
.bio-wrapper:after { content: ''; display: block; height: 100%; background: #ededed; position: absolute; top: 0; bottom: 0; left: -1500px; width: 4000px; z-index: -1;}
.bio-wrapper .col.bio { flex: 0 0 66.66%; border-right: 1px solid #b4bdc9; padding: 0 30px;}
.bio-wrapper .col.actions { flex: 0 0 33.33%; padding-left: 30px; -webkit-align-self: center; -ms-flex-item-align: center; align-self: center;}
.bio h4 { font-style: normal; font-weight: 400; font-size: 1.1em; color: #000; }
.bio h4 strong { font-weight: bold; }
.bio p { line-height: 1.35; }
.bio-wrapper button { position: absolute; top: -2px; right: 16px; width: 32px; height: 32px; border: none; background: url(/assets/icons/common.png?) no-repeat 4px -347px; background-size: 100px;}
.bio-wrapper .telicon { font-size: 1.2em; margin: 0; }
.bio-wrapper .telicon a { display: inline-block; font-weight: bold; color: #000; position: relative; padding: 6px 0 6px 52px;}

/* Articles */
.inner-mid.articles { max-width: 1180px; }
.articles-list { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin-top: -220px; padding: 0; }
.main .articles-list li:before { display: none; }
ul.articles-list li { flex: 0 1 360px; margin-bottom: 30px; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; max-width: 32%; background: #fff; box-shadow: 0 0 12px -2px rgba(0,0,0,0.16); border-radius: 8px; }
.articles-list li img { border-top-left-radius: 8px; border-top-right-radius: 8px; display: block;}
.articles-list li.spacer { background: none; box-shadow: none; margin: 0; }
.al-content { padding: 20px 25px; padding: 1.2em 1.5em; flex: 1 0 auto; }
.articles-list h3 { font-size: 1.6em; line-height: 1.2; margin: 0 0 0.15em; }
.articles-list h3 a { font-weight: 700; text-decoration: none; }
.articles-list .details, .article-header .details { margin: 0; color: #888; }
.articles-list .category, .article-header .category { text-transform: uppercase; color: #072b68; padding-right: 3px;}
.articles-list .date, .article-header .date { padding-left: 3px; color: #000;}
.articles-list .details:after { content: ''; display: block; background: #2361ad; width: 8px; height: 2px; margin: 12px 0;}
.articles-list .summary { font-size: 1.1em; }
.al-btn { padding: 0 1.5em; }
.al-btn p { margin-bottom: 0.9em; }

.article-header { margin: 120px 0; background: #eaecef; }
.article-header .image img { margin: -9% 0; }
.article-header .col.image { width: 42%; flex: 1 1 42%; max-width: 566px; }
.article-header .col.text { width: 58%; flex: 1 1 58%; padding: 20px 10px 20px 6%; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.article-header .col.text-only { padding: 30px 10px 30px 0; }
.article-header h1 { margin: 0 0 2px; }
.article-footer { margin: 60px 0 80px;border-top: 1px solid #b6b6b6; padding-top: 20px; font-size: 1.6em; color: #777; }
.share-fb, .share-tw, .share-em { display: inline-block; width: 32px; height: 32px; vertical-align: middle; background: url(/assets/icons/share.png) no-repeat 5px 5px; background-size: 25px; margin: -3px -4px 0 3px; text-decoration: none; }
.share-tw { background-position: 5px -45px; }
.share-em { background-position: 5px -95px; width: 36px;margin-right: -7px;}


/* Radio */
.hero.radio-top { background: #eaecef url(/assets/bg/hero-headphones.png) no-repeat bottom right;}
.cols.stations { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin: 30px -15px 50px;}
.cols.stations .col { padding: 30px 0; margin: 0 15px; max-width: 300px; }
.cols.stations.two-cols .col { max-width: 500px; }
.stations h2 { font-size: 2em; }
.stations h2 img { display: block; margin: 0 auto 26px;}
.main .stations ul { margin: 10px 0; padding: 0;}
.main .stations li:before { display: none; }
.main .stations h3 { font-size: 1em; font-style: normal; margin: 1em 0 0.2em; }
.stations audio { width: 100%;}

/* Gallery */
section.gallery { padding-top: 20px;}
.hero.gallery-top .inner-mid { background: #eaecef url(/assets/bg/hero-gallery.png) no-repeat center right 20px; background-size: 145px; }
.main .gallerylist { margin: 0 -10px; padding: 0; overflow: hidden;}
.main .gallerylist li { width: 24.5%; float: left; margin: 0; padding: 0 10px 20px; position: relative; overf3low: hidden;}
.main .gallerylist li.double { width: 49%; }
.main .gallerylist li:before { display: none; }
.main .gallerylist img { display: block; transition: all .3s;}
.main .gallerylist li.sizer { padding: 0; margin: 0; max-height: 0;}
.gallerylist a { display: block; overflow: hidden; position: relative; }
.gallerylist span { background: #072b68; color: #fff; padding: 10px 14px; position: absolute; bottom: -1px; z-index: 2; width: 100%; transform: translateY(100%); transition: all .3s; }
.gallerylist li:hover span, .gallerylist li:focus span { transform: none; }
.gallerylist li:hover img, .gallerylist li:focus img { transform: scale(1.1); }
.gallerylist .icon-play a:after { content: ''; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; opacity: 0.7; background: url(/assets/icons/play.png) no-repeat center center; background-size: 90px;}

/* Contact */
.contact-intro { padding-top: 70px; }
.contact-intro p { font-size:3.6em;}
.contact-intro h2 { margin-bottom: 1.2em;}
.contact-intro p a:link, .contact-intro p a:visited { font-weight: 900; font-style: italic; padding: 0; margin: 0; }
.contact-intro .telicon a:link, .contact-intro .telicon a:visited { color: #d90011; }
.contact-intro .whatsappicon a:link, .contact-intro .whatsappicon a:visited { color: #008d36; }
.contact-intro .telicon a:before, .contact-intro .whatsappicon a:before { position: relative; display: block; margin: 0 auto 8px; width: 43px; height: 43px; transform: scale(1.2);}
.contact-intro a span { white-space: nowrap; }
.contact-form-wrapper { padding-top: 60px;}
form.contact { background: #fff; color: #000; border-radius: 5px; margin-top: 50px; margin-bottom: -40%;}
form.contact p, .contact .cols p { color: #000; margin: 0 0 2em;}
form.contact p label { color: #888;}
form.contact p.submit { margin: 2em 0 1.5em; }
form.contact p.submit .btn { text-transform: uppercase; font-weight: 500; letter-spacing: 0.5px; }
.contact .cols { margin: 0; }
.contact .cols .col:first-child { padding-right: 40px; }
.contact .cols .col:last-child { padding-left: 40px; }
.contact .cols select { width: 100%; }
.contact .form-inner { padding: 60px 120px 50px; }
.contact p.notes { margin: 0 0 0.5em;}
form.contact input.textinput, form.contact textarea.textinput { width: 100%; max-width: 100%;}
.contact .textinput { border: none; border-bottom: 1px solid #555; padding: 2px 0 4px; color: #666; }
.contact .textinput:focus, .contact .textinput:active, textarea.textinput:focus, textarea.textinput:active { border: none; outline: none; border-bottom: 1px solid #388d00; color: #000; }
.contact-city { display: block; background: url(/assets/bg/city2.jpg) no-repeat center center; background-size: cover; height: 500px; }
.avifsupport .contact-city { background-image: url(/assets/bg/city2.avif); }
.main-legals h3 { margin-bottom: 0.7em; }
.main-legals h4 { font-style: normal; color: #000; font-size: 1.8em; margin-top: 1.75em; text-transform: uppercase; }
.main-legals p { line-height: 1.4; }


.search-container { padding: 60px 0 80px; }
.search-container h2 { font-size: 3em; margin-bottom: 1.2em;}
.search-results ol { font-size: 1.2em;}
.main .search-results li { margin-bottom: 0.75em;}



/* RESPONSIVE */
@media only screen and (max-width:1500px) {
.hero.about-top { background-position: 60% 0%; }
.hero .hero-intro { padding: 110px 0; }
.jingle-wrapper:before { width: 60%;}

}

@media only screen and (max-width:1400px) {
.overview-van-left { transform: translate(-350px, -50%); }
.overview-van-right {transform: translate(350px, -50%); }
}

@media only screen and (max-width:1360px) {
.service-cards .card h4 { font-size: 2.1vw; }
.service-cards .card p { font-size: 1.25vw;}
.hero.radio-top { background-position: right -120px bottom 0;}

}
@media only screen and (max-width:1260px) {
.flashes {font-size: 0.95em; }

.service-cards .card h4 { font-size: 2.5em; font-size: 2.1vw; }
.service-cards .card p { font-size: 1.6em; font-size: 1.25vw; }
.service-cards .card p.mob-btn { top: 59%; font-size: 1.2em; }
.isTouch .service-cards .card p.text { font-size: 1.2vw; }
.timeline ul { padding-left: 90px; }
.timeline li .hor { width: 380px; max-width: 380px; }
.timeline li .vert { width: 440px; max-width: 440px; }
.service-intro .text .inner { max-width: 580px; padding: 50px 25px 30px;}
}
@media only screen and (max-width:1200px) {

}

@media only screen and (max-width:1180px) {
.faq-wrapper.inner-mid { margin-left: 20px; margin-right: 20px; }
.inner-mid .faq-wrapper.inner-mid { margin-left: 0; margin-right: 0; }
}

@media only screen and (max-width:1140px) {
.jingle-wrapper { background-position: 48% 0; overflow: hidden;}
.jingle-wrapper:before { z-index: 1; }
.jingle-wrapper .col:first-child { position: relative; z-index: 2;}
.jingle { position: relative; }
.jingle:before { content: ''; display: block; width: 2000px; height: 370px; position: absolute; left: 50%; top: -370px; transform: translateX(-50%); background: url(/assets/bg/blue-headphones.png) no-repeat top 0 right 330px; z-index: 0; }
}

@media only screen and (max-width:1110px) {
.service-cards .card h4 { font-size: 2.3em; font-size: 2.1vw; }
.service-cards .card p { font-size: 1.4em; font-size: 1.3vw; }
.service-cards .card p.text { top: 63%; max-width: 65%; }
.service-cards .card p.mob-btn { font-size: 1.1em; }
.home-top .van-wrapper { width: 80%;}
.hero.home-top ul.flashes { top: 0; padding-top: 5%; }
.flashes {font-size: 0.9em; }
.about-top .hero-intro { padding: 50px 0 80px; max-width: 55%; font-size: 0.9em;}
.about-top .hero-intro p { max-width: 80%; }
.cols.stations.two-cols .col { max-width: none; }
.cols.two-cols .col { -webkit-flex: 1 1 40%; -ms-flex: 1 1 40%; flex: 1 1 40%; }
}

@media only screen and (max-width:1080px) {
.cta-call .call-strapline { font-size: 2.6em; }
.cta-call .call-services { font-size: 1.05em; max-width: 660px; }
.faq-wrapper.inner-mid { padding: 40px 50px; }
.service-intro .text .inner { padding: 30px 25px 20px; margin-right: 0; }
.book-service .inner-mid { min-height: 600px; }
.al-content { font-size: 0.9em; }
.article-header { margin: 100px 0; }
.article-header h1 { font-size: 3.4em; }
.article-main h2 { font-size: 2.8em;}
.hero.radio-top { background-position: right -220px bottom 0;}

}

@media only screen and (max-width:1000px) {
.overview-intro { font-size: 0.9em; }
.overview-intro h1 { font-size: 4em; }
.middle-circle .inner { max-width: 620px; }
.service-cards .card h4 { font-size: 2em; font-size: 2.1vw; }
.service-cards .card p { font-size: 1.4vw; }
.service-cards .card p.mob-btn { font-size: 1em; }
.cta-call img { width: 220px; }
.cta-call .call-strapline { font-size: 2.3em; padding: 13px 10px 13px 30px; }
.cta-call .call-services { font-size: 1.05em;}
.cta-call ul { margin: 0;}
section.commercial-services { padding-bottom: 40px; }
.timeline ul { padding-left: 70px; }
.timeline li .hor { width: 350px; max-width: 350px; }
.timeline li .vert { width: 410px; max-width: 410px; }
.service-finder-outer { padding: 25px 30px;}
.service-finder { padding: 25px 20px 20px; }
.book-service .inner-mid { min-height: 500px; padding-top: 60px; padding-bottom: 220px; }
section.book-service { min-height: 500px; }
.home-top .van-wrapper { width: 70%;}
.hero.home-top ul.flashes { padding-top: 3%; }
.hero.home-top .flashes {font-size: 0.85em; }
.service-intro .icon img { width: 120px; }
.service-intro p.icon { margin-bottom: 0.5em; }
.hero.service h1 { font-size: 3.8em;}
.hero.service h1:after { margin: 25px 0; }
.book-service:before { clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 78%);} 

.main .how-it-works-lrg { padding: 40px 35px; }
.how-it-works-lrg .intro { padding: 24px 26px; margin: 0 0 40px; }
.how-it-works-lrg .intro .image { min-width: 380px; }
.how-it-works-lrg .intro .text { padding: 0 60px 0 30px;}
.how-it-works-lrg-part .text { padding-right: 60px;}

.team-section .team-cols { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; max-width: 765px;}
.cols.two-cols .col.team-heading { flex: 1 1 100%; min-width: 190px; max-width: 100%; padding-left: 15px;}
.cols.two-cols .col.team-wrapper { flex: 1 1 50%; min-width: 0; }
.person {  padding: 0 15px 24px;}
.bio-wrapper { padding: 0 15px;}

.bio-wrapper .col.bio { padding: 0 30px 0 15px;}
.bio-wrapper button {right: 12px; }
.hero.hero-general .hero-intro { padding: 60px 0 50px; }
.hero.radio-top { background-size: 1700px;}
.contact .form-inner { padding: 50px 90px 40px; }
.contact-city { display: none; }
form.contact { margin-bottom: 0;}
section.contact-form-wrapper { padding-bottom: 30px; }
}

@media only screen and (max-width:950px) {
.jingle-wrapper:before { display: none; }
.jingle-wrapper { background-image: none;}
.jingle-wrapper .cols { margin-top: 20px;}
.jingle-wrapper .col:first-child { flex: 0 0 45%;}
.jingle-wrapper .col:last-child { flex: 0 0 55%;}
.articles-list { max-width: 710px; margin-left: auto; margin-right: auto;}
ul.articles-list li { flex: 0 0 340px; max-width: 48%; }
}

@media only screen and (max-width:920px) {
.about-top .hero-intro { padding: 40px 0 60px; }
.pg_about-us .icon { transform: scale(0.85) translateX(-8%); margin: -8px 0;}
.inner-mid .ltext-rimage .text { padding-left: 5px; }
.inner-mid .masked-photo { margin-right: 60px; }
.careers h2 { margin-top: .9em;}
}
@media only screen and (max-width:900px) {
.overview-intro { background: #ededed; }
.overview-intro .middle-circle { width: 100%; max-width: 780px; padding: 100px 50px 80px; }

.middle-circle .inner { max-width: none; }
.overview-van-left, .overview-van-right, .overview-intro .middle-circle:before { display: none;}
.service-cards .card h4 { font-size: 1.8em; font-size: 2.1vw; }
.service-cards .card p.mob-btn { top: 57%; }
.faq-wrapper.inner-mid { padding: 30px 35px; }

.how-it-works-lrg .intro .image { min-width: 300px; }
.how-it-works-lrg-part .text { padding-right: 40px;}

.service-finder-outer { width: 75%; }
.service-map { width: 55%; }
.book-service .inner-mid { min-height: 400px; padding-top: 50px; padding-bottom: 200px; }
.service-intro .icon img { width: 100px; transform: translateX(10%); }
.service-intro p { line-height: 140%;}
.expect-list { font-size: 0.9em;}
.hero.radio-top { background-position: right -280px bottom 0;}
.contact .form-inner { padding: 40px 60px 30px; }

}

@media only screen and (max-width:860px) {
.cta-call .call-strapline { font-size: 2.1em; }
.cta-call .call-services { font-size: 1em;}
.jingle-wrapper .flashes { font-size: 0.8em; }
.hero.articles-top .hero-intro { padding-top: 80px; padding-bottom: 200px; }
.article-header { margin: 80px 0; }
.article-header h1 { font-size: 3.2em; }

}


@media only screen and (max-width:800px) {
.service-cards { max-width: 720px; }
.service-cards .card-wrapper { -webkit-flex: 0 1 48.5%; -ms-flex: 0 1 48.5%; flex: 0 1 48.5%; width: 48.5%;  margin: 15px 0; }
.service-cards .card h4 { font-size: 2.3em;  }
.service-cards .card p { font-size: 1.5em; }
.service-cards .card p.text { top: 64%; max-width: 60%; }
.isTouch .service-cards .card p.text { font-size: 1.4em; }
.service-cards .card p.mob-btn { top: 58%;font-size: 1.3em; }
.comm-services-overview .col.aright { -webkit-flex: 1 1 30%; -ms-flex: 1 1 30%; flex: 1 1 30%; }
.service-finder-outer { padding: 20px 25px;}
.service-finder { padding: 20px 15px 15px; }
.service-finder-outer h2 { font-size: 3em; }
.service-finder-outer > p { font-size: 1.5em; }
.service-finder-outer  h2.withrule::after { margin: 20px 0 15px; }
.home-top .van-wrapper { width: 65%;}
.hero.home-top ul.flashes { padding-top: 2%; }
.flashes {font-size: 0.8em; }
.service-intro .icon { display: none;}
.service-intro .text .inner { padding-right: 5px; }
.expect-list { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1em;}
.expect-list li { -webkit-flex: 0 0 48%; -ms-flex: 0 0 48%; flex: 0 0 48%; }
ol.expect-list li { margin-bottom: 12px;}
.expect-list .expect2:after { content: ''; display: block; position: absolute; bottom: 30px; right: -20px; width: 20px; height: 50px; mix-blend-mode: multiply;background: #d90011;  }
.inner-mid .masked-photo { margin-right: 50px; }
.content .hero.about-top { background: #fff url(/assets/bg/street-blue-duotone-with-van-sml.jpg) no-repeat top center; background-size: contain; padding-top: 50%;}
.avifsupport .hero.about-top { background-image: url(/assets/bg/street-blue-duotone-with-van-sml.avif); }
.about-top .hero-intro { padding: 40px 0 10px; max-width: 100%; margin: 0 30px;}
.hero.about-top .hero-intro h1 { color: #072b68; }
.about-top .hero-intro p { max-width: 100%; color: #000; }
.how-it-works-lrg .intro { padding: 22px 24px; }
.how-it-works-lrg .intro .text { padding: 0 30px 0 10px;}
}

@media only screen and (max-width:768px) {
.comm-services-overview .col.aright { display: none;}
.commercial-services .col-text { flex: 1 1 100%; max-width: 100%; padding-right: 0; }

.cta-call { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.cta-call-img { margin: 0 auto; }
.cta-call .call-strapline:before { display: none; }
.cta-call { padding: 0; }
.cta-call .call-strapline { padding: 13px 10px; text-align: center; }
.cta-call .call-services { padding-left: 0; font-size: 1.05em;}
.cta-call ul { margin: 0;}
.timeline ul { padding-left: 50px; }
.timeline li { padding-right: 30px;}
.timeline li .hor { width: 340px; max-width: 340px; }
.timeline li .vert { width: 370px; max-width: 370px; }
.isTouch .timeline { scroll-snap-type: x mandatory; scroll-padding-left: 40px; }
.isTouch .timeline li { scroll-snap-align: start; }
.jingle-wrapper .flashes { font-size: 0.75em; padding: 0; }
.jingle h2 { font-size: 3.2em;}
.main .team-list li.col { font-size: 0.9em; }
.contact .form-inner { padding: 30px 40px 20px; }
.contact .cols { display: block; }
.contact .cols .col:first-child, .contact .cols .col:last-child { padding: 0; }

}

@media screen and (max-width: 767px) {
.service-intro .text { -webkit-flex: 0 0 100%; -ms-flex: 0 0 100%; flex: 0 0 100%; }
.service-intro .text .inner { max-width: 100%; padding: 40px 25px 30px;}
.service-intro .icon { display: block;}
.service-intro .text .inner p { max-width: 100%; }

.main .how-it-works-lrg { padding: 40px 35px; }
.how-it-works-lrg .intro { padding: 24px 56px 32px; }
.how-it-works-lrg .intro > div { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.how-it-works-lrg .intro .image { min-width: auto; }
.how-it-works-lrg .intro .text { padding: 0 0 20px;}

.hero .service-intro .img { display: none;}
.main .gallerylist li { width: 33%; }
.main .gallerylist li.double { width: 66%; }
.gallerylist span { padding: 8px 10px; font-size: 0.9em; }

}

@media only screen and (max-width:720px) {
.service-cards .card h4 { font-size: 2.2em; font-size: 3.1vw; }
.service-cards .card p { font-size: 2.1vw; }
.service-cards .card p.text { top: 64%; max-width: 60%; }
.isTouch .service-cards .card p.text { font-size: 1.9vw; }
.cols.why-rr { margin-bottom: -20px; max-width: 300px;}
.why-rr .col { max-width: 680px; padding: 0 0 20px; }
.overview-intro .middle-circle { width: 100%; max-width: 780px; padding: 80px 20px 60px; }
.service-icon-roundel { transform: scale(0.85); margin: 0 -10px; }
.how-it-works-lrg-part .icon { min-width: 105px; }
.how-it-works-lrg-part .text { padding-right: 25px;}

.service-finder-outer { padding: 30px 35px; width: 100%; max-width: 350px; margin: 360px auto 0; }
.service-finder { max-width: 100%;}
.service-map { width: 440px; right: calc(50% - 220px);}
.book-service:before { clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 88%);} 
.book-service .inner-mid { padding-bottom: 50px; }
.jingle:before {  background: url(/assets/bg/blue-headphones.png) no-repeat top 0 right 410px; height: 320px; top: -320px;background-size: 85%;}
.jingle { margin-top: 280px;}

.main .team-list li.col { flex: 1 1 50%; }
.team-section .team-cols { max-width: 510px;}
.bio-wrapper .two-cols { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 0 15px;}
.bio-wrapper .col.bio { border: none; border-bottom : 1px solid #b4bdc9; padding: 0 0 10px;}
.bio-wrapper button { top: -2px; }
.bio h4 { padding-right: 40px;}
.bio-wrapper .col.actions { flex: 1 1 100%; width: 100%; padding: 20px 0 0;}
.bio-wrapper { top: -8px; }

.cols.stations { max-width: 400px; margin: 40px auto;}
.cols.stations .col { margin: 0;}
.cols.two-cols .col { -webkit-flex: 1 1 100%; -ms-flex: 1 1 100%; flex: 1 1 100%; }
}

@media only screen and (max-width:700px) {
.hero.home-top { padding: 40px 0 0; background-size: 150%; background-position: top right;}
.hero.home-top .inner { text-align: center; }
.home-top .van-wrapper { width: 95%; max-width: 600px; margin: 0 auto; }
.hero.home-top ul.flashes { position: relative; right: 0; margin: 0 auto; padding: 10px 0 0; }
.flashes {font-size: 0.85em; }
.banner-flash p { font-size: 1.9em;}
}

@media only screen and (max-width:650px) {
.service-cards .card p.mob-btn { top: 57%; font-size: 1.2em;}
.faq-wrapper img { display: none;}
.jingle-wrapper .col:first-child { text-align: center; }
.jingle-wrapper .flashes { text-align: left;}
.jingle-wrapper .cols { margin-bottom: 40px;}
.careers .col:first-child { margin-bottom: 60px; }
.careers .col .masked-photo { width: 70%; margin: 0 auto; -webkit-transform: skew(-14deg) translateX(-9%); -ms-transform: skew(-14deg) translateX(-9%); transform: skew(-14deg) translateX(-9%); }
.al-content { font-size: 0.85em;}
.article-header { margin-bottom: 60px;}
.article-header .col.image { width: 100%; max-width: none; text-align: center;  }
.article-header .col.image img { margin-bottom: 20px; max-width: 400px; width: 100%;}
.article-header .col.text { width: 100%; padding: 10px 10px 30px; text-align: center; display: block; }
.article-header h1 { font-size: 3.4em; }
.article-footer.cols { display: -ms-flexbox; display: -webkit-flex; display: flex; }
.hero.hero-general .hero-intro { padding: 40px 0 30px; }
.hero.radio-top { background-size: 1300px;}
.hero.radio-top { background-position: right -200px bottom 0;}
.hero.gallery-top .inner-mid { background-size: 115px; }
}

@media only screen and (max-width:600px) {
.timeline li .vert .img { flex: 0 0 190px; }
.timeline li .hor img { width: 288px;}
.timeline .year { -webkit-transform: scale(0.9); -ms-transform: scale(0.9); transform: scale(0.9);}
.hero.about-top { background-size: 600px; padding-top: 290px;}
.main .how-it-works-lrg { padding: 30px 25px; }
}

@media only screen and (max-width:560px) {
.service-cards { max-width: 360px; }
.service-cards .card-wrapper { -webkit-flex: 0 1 100%; -ms-flex: 0 1 100%; flex: 0 1 100%; width: 100%;  margin: 15px 0; }
.service-cards .card h4 { font-size: 2.25em;  }
.service-cards .card p { font-size: 1.4em; }
.service-cards .card p.text { top: 62%; max-width: 63%; }
.isTouch .service-cards .card p.text { font-size: 1.3em; }
.service-cards .card p.mob-btn { top: 59%; font-size: 1.1em;}
.cta-call .call-strapline { padding: 10px; }
.cta-call .call-services { font-size: 1em;}
.cta-call .call-services ul { -webkit-columns: 2; -moz-columns: 2; columns: 2; padding: 0;}
.cta-call .call-services ul li { padding-left: 20px;}
.overview-intro .middle-circle .logo { width: 180px; }
.cols.two-cols .col.team-heading { padding-left: 0;}
.person { padding-left: 10px; padding-right: 10px; }
.bio-wrapper { padding: 0 10px;}
.cols.two-cols .col.team-wrapper { margin: 0 -10px; }
.main .team-list li.col { min-width: 200px; }
.person .team-title { padding: 12px 42px 20px 14px; }
.contact-intro { padding: 50px 0 20px; }
}

@media only screen and (max-width:540px) {
.articles-list { max-width: 340px; }
ul.articles-list li { flex: 0 0 340px; max-width: 100%; }
.al-content { font-size: 0.95em; }
.main .gallerylist li { width: 49.5%; }
.main .gallerylist li.double { width: 100%; }
.gallerylist span { padding: 6px 8px; font-size: 0.8em; }
.how-it-works-lrg .intro { padding: 24px 36px 32px; }
}

@media only screen and (max-width:500px) {
.hero.home-top { background-size: 180%; }
.faq-wrapper.inner-mid { padding: 20px 25px; }
.expect-list { font-size: 0.9em; margin-bottom: 2.5em; }
.expect-list .num { background-position-x: 62px !important; }
.service-intro .text .inner { padding: 20px 25px 15px;}
.how-it-works-lrg-part { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin-top: -10px; }
.how-it-works-lrg-part .text { -webkit-order: 1; -ms-flex-order: 1; order: 1; padding: 0;}
.how-it-works-lrg-part .icon { padding-bottom: 15px; }
.how-it-works-lrg .intro { padding: 18px 26px 22px; }
.contact-form-wrapper { padding-top: 40px;}
.contact .form-inner { padding: 25px 20px 15px; }
section.home-banner { margin-top: -1em; }
}

@media only screen and (max-width:460px) {
.service-finder-outer { padding: 30px 30px 25px; margin-top: 85%;}
.service-map { width: 96%; right: 2%; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
.al-content { font-size: 0.9em; }
.contact-intro { font-size: 0.9em; }
}

@media only screen and (max-width:450px) {
.flashes {font-size: 0.75em; }
.expect-list { font-size: 0.85em;}
.expect-list h3 { padding-left: 2em; }
.expect-list p { padding-left: 2.2em; }
.expect-list li:before { width: 72px; }
.book-service:before { -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 92%); clip-path: polygon(0 0%, 100% 0, 100% 100%, 0% 92%);} 
.book-service .inner-mid { padding-bottom: 35px; }
.careers .col .masked-photo { width: 90%; }
}

@media only screen and (max-width:420px) {
.hero.about-top { background-size: 140%; padding-top: 68%;}
.about-top .hero-intro { margin: 0 20px;}
}

@media only screen and (max-width:400px) {
.expect-list h3 { padding-left: 1.7em; }
.expect-list p { padding-left: 1.9em; }
.expect-list li:before { width: 66px; }
.al-content { font-size: 0.85em; }
.article-header h1 { font-size: 3.2em; }
.article-footer.cols { display: block; }
.article-footer .col { padding-bottom: 20px; text-align: left;}
.article-footer { margin: 50px 0; }
.cols.why-rr { max-width: 100%;}
}

@media only screen and (max-width:360px) {
.service-cards .card h4 { font-size: 6vw;  }
.service-cards .card p { font-size: 3.8vw; }
.isTouch .service-cards .card p.text { font-size: 3.5vw; }
.service-cards .card p.mob-btn { top: 58%; font-size: 1.05em;}
.cta-call { font-size: 0.95em; }
.service-finder-outer { padding: 25px 20px 20px; }
.how-it-works-lrg .intro .text { padding: 0 0 5px;}
.how-it-works-lrg .intro { padding: 6px 16px 12px; }
}


