@font-face {
font-family: 'Roboto'; font-style: normal; font-weight: 400; font-display: swap;
src: local('Roboto'), url('/fonts/roboto-v29-latin-regular.woff2') format('woff2'), url('/fonts/roboto-v29-latin-regular.woff') format('woff');
}
@font-face {
font-family: 'Roboto'; font-style: normal; font-weight: 700; font-display: swap;
src: local('Roboto'), url('/fonts/roboto-v29-latin-700.woff2') format('woff2'), url('/fonts/roboto-v29-latin-700.woff') format('woff');
}


/* RESET */
*,*::before,*::after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role="list"],ol[role="list"]{list-style:none}html{scroll-behavior:smooth;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block;height:auto;}input,button,textarea,select{font:inherit}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}

/* SITE */
body { background: #fff; color: #333; font: 1em Roboto, Arial, Helvetica, sans-serif; }
h1,h2,h3,h4, p.small-pre-h2 { font-family: ff-good-headline-web-pro-con, Arial, Helvetica, sans-serif; font-weight: 900; }
h2, p.small-pre-h2 { text-transform: uppercase; font-style: italic; font-size: 3em; }
p.small-pre-h2 { font-size: 1.8em; }
p { line-height: 1.3; }
main h4 { font-size: 1.4em; text-transform: uppercase; }
.wrapper { max-width: 2000px; margin: 0 auto; background: #fff; box-shadow: 0 0 30px 10px rgba(0,0,0,0.4)}
.inner { max-width: 1200px; margin: 20px auto; position: relative;}
.inner.nomargin { margin: 0 auto; }
.inner.centred { text-align: center; }

a.button, a.button:link, a.button:visited, span.button { display: inline-block; background: #77b229; color: #fff; text-decoration: none; text-transform: uppercase; padding: 14px 30px; border-radius: 13px; font-weight: bold; font-size: 0.9em; transition: all .2s; text-shadow: 0 0 8px rgba(0,0,0,0.25); will-change: transform; }
a.button:hover, a.button:active, a.button:focus, .button:hover { background: #5b9214; transform: scale(1.05, 1.1);}

section { margin: 0 0 15px; }
section.block-nohero { padding-top: 80px; }
section.block-grey { background: #f3f3f5; }
section.block-general { margin: 0; }

section.intro-hero, section.addresses { background: #253B2B url(/assets/contour-lines2.svg) no-repeat center bottom; background-size: cover;color: #fff; text-align: center; padding: 0 0 40px; margin: 0; position: relative; overflow: hidden;}
section.intro-hero:before, section.intro-hero:after { content: 'GO Action Forest GO Action Forest GO Action Forest GO Action Forest \AGO Action Forest GO Action Forest GO Action Forest GO Action Forest'; opacity: 0.15; white-space: pre-wrap; text-align: left;
font: 7em/1.6 ff-good-headline-web-pro-con; text-transform: uppercase; -webkit-text-stroke: 1.5px #fff; color: transparent; position: absolute; left: -10px; bottom: 140px; z-index: 0; width: 3000px; height: 350px; overflow: hidden; }
section.intro-hero:before { left: -210px; bottom: 50px;}
.subpage-hero.intro-hero:before, .subpage-hero.intro-hero:after { display: none;}
.hero { max-width: 1600px; margin: 0 auto; padding: 0 15px; position: relative; z-index: 1;}
.hero-wrapper { position: relative; margin-bottom: 40px;}
.hero-wrapper:after { content: ''; display: block; background: #fff; left: 0; right: 0; top: -1px; z-index: 0; height: 50%; position: absolute; width: 100%; }
.hero img { border-radius: 15px; }
.hero .text { position: absolute; left: 4.35%; bottom: 11.5%; color: #fff; text-align: left; }
.centred .hero .text { left: 4.35%; right: 4.35%; text-align: center; }
.hero h1 { text-transform: uppercase; font-size: 9.25em; line-height: 0.8; margin: 0 0 0.04em; }
@supports(-webkit-text-stroke: initial) {
.hero h1 { -webkit-text-stroke: 2.5px #fff; color: transparent; }
}
.subpage-hero .hero h1 { font-size: 8em;}
.subpage-hero .hero .text { bottom: 6%;}
.intro-hero > .inner { padding: 0 15px;}
p.strapline { font: 4.4em/0.9 ff-good-headline-web-pro-con, Arial, Helvetica, sans-serif; font-weight: 900; text-transform: uppercase; font-style: italic; color: #8DC63F; margin: 0; }
p.strapline span { display: block; color: #fff; }
p.strapline br { display: none; }
.subpage-hero p.strapline { font-size: 4em; margin-bottom: 0.5em;}
ul.nobullets { list-style: none; padding-left: 0; }

a.tel { text-decoration: none; }
a:link, a:visited { color: #338739; font-weight: 700; }
a:hover, a:active, a:focus { color: #6eac3a; font-weight: 700; }

.mobonly { display: none; }

/* Header */
.topbar { background: #8BC63E; text-align: center; }
.topbar p { color: #fff; }
.topbar p a:link, .topbar p a:visited, footer a.button-contact { display: inline-block; color: #fff; text-decoration: none; padding: 8px 10px 8px 30px; margin: 0 8px; font-weight: 700; position: relative; letter-spacing: 5%;}
.topbar a:before, a.button-contact:before { content: ''; display: block; width: 24px; height: 22px; position: absolute; left: 0px; background: url(/assets/icons.png?a) no-repeat 0 0; background-size: 25px; }
.topbar a.whatsapp:before, a.button-contact.whatsapp:before { background-position: 0 -350px;}
a.header-logo { display: inline-block;}

.navtoggle-wrapper { max-width: 1600px; margin: 0 auto; position: relative;}
.navtoggle { display: block; position: absolute; z-index: 9; left: 15px; top: 26px; width: 46px; height: 46px; border: 3px solid #404041; border-radius: 30px; transition: all 0.25s ease-in-out 0s; }
.navtoggle span { display: block; width: 20px; height: 3px; background: #404041; border-radius: 2px; position: relative; left: 10px; top: 14px; transform: rotate(0deg); transition: all 0.25s ease-in-out 0s;}
.navtoggle span:last-child { top: 21px; }
.navtoggle:hover { border: 3px solid #8bc63e; }
.navtoggle:hover span { background: #8bc63e; }
.sidr-open .navtoggle span { transform: rotate(-45deg); top: 19px;}
.sidr-open .navtoggle span:last-child { transform: rotate(45deg);top: 16px; }

.sidr { display: block; position: fixed; top: 0; height: 100%; z-index: 999999; width: 260px; overflow-x: hidden; overflow-y: auto; left: -260px; right: auto; background: #2D2F26 url(/assets/contour-lines2.svg) no-repeat center bottom; background-size: cover; color: #fff; box-shadow: inset -35px 0px 30px -25px rgba(0,0,0,0.3); }
.sidr a:link, .sidr a:visited { display: inline-block; color: #fff; font: 1.5em/0.9 ff-good-headline-web-pro-con, Arial, Helvetica, sans-serif; font-weight: 900; text-transform: uppercase; font-style: italic; text-decoration: none; padding: 5px;}
.sidr a:hover, .sidr a:focus { color: #c3e49b; }
.navlogo { width: 160px; margin: 30px auto; }
.sidr ul { list-style: none; margin: 20px; padding: 0; }
.sidr li { padding: 0; margin: 10px 0;}

header { position: relative; z-index: 2; text-align: center; padding: 24px 0 0; margin-bottom: -43px;}
.header-logo img { display: inline-block; }
.sticky-header { position: fixed; width: 100%; text-align: center; background: rgba(255,255,255,0.95); top: 0; padding: 8px 0 6px; transition: all 0.6s; z-index: 9;}
.sticky-header.hide { top: -72px;}
.sticky-header .header-logo { width: 100px;}
.sticky-header .navtoggle { top: 3px;}
.sticky-header a.button:link, .sticky-header a.button:visited, .sticky-header a.button:hover, .sticky-header a.button:focus { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); padding: 10px 20px; }
.sidr p.social { margin: 10px 20px; }
.sidr p.social a { margin-right: 2px; }
.social a:hover path { fill: #c3e49b; }

/*

.intro { background: #3e5328 url(/assets/photos/paintball-players-in-forest-lrg.avif) no-repeat center center; background-size: cover; color: #fff; text-align: center; position: relative; padding-top: 52.43%; }
.noAvif .intro { background-image: url(/assets/photos/paintball-players-in-forest-lrg.jpg); }
.intro.intro-adventure { background-image: url(/assets/hero/girls-in-basecamp-lrg.avif); }
.noAvif .intro.intro-adventure { background-image: url(/assets/hero/girls-in-basecamp-lrg.jpg); }

.intro h1, .intro h2 { text-transform: uppercase; text-shadow: 0 0 15px rgba(0,0,0,0.7); line-height: 1; padding: 0 15px;}
.intro h1 { margin: 0 0 0.2em; font-size: 3.2em; font-size: 4vw; }
.intro h2 { font: 1.8em Roboto, Arial, Helvetica, sans-serif; font-weight: 700; font-size: 2.2vw;}
.intro .headings { position: absolute; top: 50%; transform: translateY(-50%); width: 100%;}
.intro p { position: absolute; bottom: 30px; width: 100%; padding: 0 20px; }
*/

.three-boxes { display: flex; overflow-x: auto; }
.three-boxes .item { flex: 1 1 auto; position: relative; min-width: 330px; }
.three-boxes .divider { flex: 0 1 15px; min-width: 15px; max-width: 15px; }
.three-boxes img { width: 100%; height: auto; }

.activities { max-width: 1600px; margin: 0 auto; padding: 0; position: relative;}
.activities h2 { color: #E2ECE4; padding: 0 15px; line-height: 1; }
.boxe3s { display: flex; }
.boxes .item { position: relative; min-height: 400px; border-radius: 10px; box-shadow: 0 4px 4px rgba(0,0,0,0.2); background-color: #152b1b; background-repeat: no-repeat; background-size: cover; background-position: center center; margin: 0 7px;}
.boxes li:first-child .item { margin-left: 0; }
.boxes li:last-child .item { margin-right: 0; }
.boxes .divider { flex: 0 1 25px; min-width: 25px; max-width: 25px; }
.boxes img { width: 100%; height: auto; }
.overview { position: relative; z-index: 1; margin: 25px auto 35px; text-align: left;}
.overview .title { position: absolute; bottom: 35px; width: 100%; color: #fff; padding: 0 30px; }
.overview h3 { text-transform: uppercase; font-size: 2.4em; line-height: 1;margin-bottom: 0.3em; text-shadow: -1px 1px 10px rgba(0,0,0,0.5);}
.overview p { font-size: 1.1em; }
.overview .link { padding-top: 15px; }
.overview-paintball { background-image: url('/assets/activities/paintball2.jpg'); }
.item.overview-lasertag { background-image: url('/assets/activities/laser-tag2.jpg'); background-position: left center;}
.overview-adventure { background-image: url('/assets/activities/adventure-camp.jpg'); }
.overview-venuehire { background-image: url('/assets/activities/venue-hire2.jpg'); }

.activities .swiffy-slider { margin: 20px 0; }
.slider-nav-wrapper { position: absolute; right: 0; top: -75px; width: 90px;}
button.slider-nav { visibility: visible; width: 45px; height: 50px; opacity: 1; padding: 0 4px; margin: 0;}
body .slider-nav-arrow .slider-nav::before, body .slider-nav-arrow .slider-nav::after {display: none; }
body  .slider-nav-outside-expand .slider-nav, body .slider-nav-outside-expand .slider-nav.slider-nav-next { margin: 0; }
button.slider-nav:hover path { fill: #77b229; }
@media (max-width: 62rem) {
body .slider-item-reveal { --swiffy-slider-item-count: 2; }
body .slider-nav-outside-expand .slider-container { margin: 0; }
}
@media (max-width: 32rem) {
body .slider-item-reveal { --swiffy-slider-item-count: 1; }
body .slider-nav-outside-expand .slider-container { margin: 0; }
}
.welcome { background: #253B2B url(/assets/photos/intro-paintball-lasertag-aiming.jpg) no-repeat right center; background-size: contain; color: #fff; padding: 60px 5% 60px 5%; }
.pg_adventure-camp .welcome { background-image: url(/assets/photos/intro-adventure-club.jpg); margin-top: 30px;}
.welcome .text { max-width: 1200px; padding-right: 400px; margin: 0 auto;}
.welcome h2 { font-size: 2.6em; line-height: 1; text-transform: uppercase; margin: 0 0 1em;}
.welcome p { font-size: 1.2em; margin: 1em 0 0; line-height: 1.6;}
.welcome img { display: none; }

.details { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; max-width: 1600px; padding: 0 15px; margin: 50px auto 35px; }
.details > div { width: 50%; }
.details .text { padding: 50px; }
.details h2 img { margin: -5px 0 5px -5px; }
.details h3 span { padding: 5px 20px; background: #253B2B; color: #fff; text-transform: uppercase; display: inline-block; line-height: 1;font-size: 1.55em;}
.details h3 { font-size: 1em; line-height: 1.2; margin: 0.2em 0 0.5em; font-weight: 400; }
.details h3.withtopmargin { margin-top: 2em;}
.details p, .details li { margin: 0.9em 0; line-height: 1.3; }
.details .images .details-logo img { margin: 0 auto 15px; }
.details .text .details-logo img { display: none; }
p.buttonpara { margin: 1.5em 0 0; }

.locations { margin: 40px auto 20px; gap: 0.25em; }
.locations img { border-radius: 15px; }
.locations .content { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; color: #fff; padding: 0 20px; text-align: center; }
.locations h3 { text-transform: uppercase; font-size: 1.8em; line-height: 1; margin-bottom: 0.6em; }
.locations p { font-size: 0.95em; line-height: 1.4; }

.booknow p { font-size: 1.6em; margin: 1em 0; }
.booknow .inner { padding: 2px 0 10px; }

.intro2 { border-radius: 30px 30px 0 0; background: #fff url(/assets/logos/goaf-watermark.png) no-repeat left bottom; background-size: 800px; margin-top: -30px; position: relative; padding: 60px 0 90px; overflow: hidden;}
.intro2.contour { background-color: #fff; background: url(/assets/logos/goaf-watermark.png), url(/assets/contour-lines2.svg); background-repeat: no-repeat; background-position: left bottom, center bottom; background-size: 800px, cover; }

.intro2 .inner { margin: 0 auto; max-width: 1610px; padding: 0 20px; display: flex; }
.intro2 h2 { margin-bottom: 0.6em; font-size: 3.5em; line-height: 1; }
.intro2 p { font-size: 1.25em; line-height: 1.6; margin: 0 0 1.5em; max-width: 740px; }
.intro2 p.large { font-size: 1.5em; line-height: 1.5; margin: 0 0 1.25em;}

.intro2 .text { flex: 1 1 60%; padding: 40px 40px 0 0; }
.intro2 .image { flex: 1 1 40%; position: relative;}
.intro2 .image:before { content: ''; display: block; position: absolute; left: 50px; top: 110px; width: 1500px; height: 120px; background: url(/assets/paint-splat-line.png?) no-repeat 0 0; background-size: 1600px; opacity: 0.9;}
.intro2 img { border-radius: 15px; }
.intro2 .image1 { display: inline-block; position: relative; float: right;}
.intro2 .image2 { margin: -130px auto 0 0; display: inline-block;}
.intro2 .image3 { margin-top: -30px; float: right; max-width: 540px; width: 90%;}
.intro2 .image3 img { }
.activity-select { border-radius: 30px 30px 0 0; background: #181818 url(/assets/bg/activities-box-lrg.jpg) no-repeat center center; background-size: cover; color: #fff; margin-top: -60px; position: relative; padding: 45px 0 50px; text-align: center; }
.activity-select h2 { font-size: 3.4em; line-height: 1;margin: 0.1em 0 0.35em; padding: 0 15px;}
section p.small-pre-h2 { margin: 0 auto; line-height: 0.8; }
.activity-select p { padding: 0 15px; }

/* Occasions boxes */
#occasion { height: auto; max-height: none; padding-top: 60px; text-align: center; }
#occasion .content { padding: 0 15px;}
#occasions { max-width: 1200px; list-style-type: none; margin: 38px auto 0; padding: 0; overflow: hidden; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center;}
#occasions a:link { text-decoration: none !important; border-radius: 15px; }
#occasions a:after { content: ''; display: block; background: linear-gradient(0deg, rgba(0,0,0,1) 10%, rgba(0,0,0,0) 50%); width: 100%; height: 100%; border-radius: 15px; position: absolute; opacity: 0.85; transition: opacity 0.6s; }
#occasions li { position: relative; margin: 0 1.2% 60px; width: 30.4%; text-align: center; padding: 0; vertical-align: top; }
#occasions img { width: 100%; max-width: none; height: auto; float: left; -webkit-transition: all 1s; -moz-transition: filter 0.3s, transform 1.6s; transition: filter 0.3s, transform 1.6s;  }
#occasions .full-box-link { display: block; overflow: hidden; }
#occasions h5 { color: #fff; font: 2.3em ff-good-headline-web-pro-con, 'Arial Narrow', Arial, sans-serif; font-weight: 900; line-height: 0.8; margin: 0; padding: 0 10px; font-stretch: condensed;
text-transform: uppercase; text-decoration: none; position: absolute; bottom: 50px; left: 0; z-index: 3; width: 100%; text-shadow: 0 2px 3px rgba(0,0,0,0.65);}
#occasions .small h5 { font-size: 2.5em; line-height: 0.8;}
#occasions h5 span { font-size: 0.7em; }
#occasions .small h5 span { font-size: 0.82em; }
#occasions p { position: absolute; bottom: -23px; left: 0;width: 100%; margin: 0; z-index: 5;}
#occasions .button { font-size: 1em; min-width: 190px; background: #e81f39; font: 1.8em ff-good-headline-web-pro-con, 'Arial Narrow', Arial, sans-serif; font-weight: 900; padding: 6px 40px; }
#occasions .full-box-link:hover img { -webkit-filter: brightness(0.6); filter: brightness(0.6); -moz-transform: scale(1.08); -ms-transform: scale(1.08); -webkit-transform: scale(1.08); transform: scale(1.08); }
#occasions .full-box-link:hover:after { opacity: 0.5; }
#occasions.twocol { max-width: 760px; }
#occasions.twocol li { width: 47%; }
#occasions .full-box-link:hover .button { opacity: 1; }

section.reviews { padding: 45px 20px 40px; text-align: center; }
section.reviews h2 { font-size: 3.4em; line-height: 1;margin: 0.1em 0 0.35em; padding: 0 15px;}
section p.small-pre-h2 { margin: 0 auto; line-height: 0.8; }

section.addresses { background-color: #252b27; padding: 50px 0 80px; border-radius: 0 0 30px 30px;}
.pg_adventure-camp section.booknow { background: #fff; color: #252b27; }

/* featured logos */
.featured-logos { padding: 60px 0; text-align: center;}
.featured-logos h3 { font-style: italic; text-transform: uppercase; font-size: 1.8em; margin: 0 auto 0.8em;}
.featured-logos p { max-width: 1280px; margin: 0 auto; }
.featured-logos img { height: auto; display: inline-block; }
.featured-logos .feat-logo1 { width: 39%; margin-right: 3.5%; }
.featured-logos .feat-logo2 { width: 31%; margin-right: 3.5%; }
.featured-logos .feat-logo3 { width: 22.5%; }
.featured-logos .corp-logoA1 { width: 28%; margin-right: 1%; }
.featured-logos .corp-logoA2 { width: 44%; margin-right: 1%; }
.featured-logos .corp-logoA3 { width: 24%; }
.featured-logos .corp-logoB1 { width: 31%; margin-right: 1%; }
.featured-logos .corp-logoB2 { width: 43%; margin-right: 1%; }
.featured-logos .corp-logoB3 { width: 24%; }
.featured-logos .schools-logo1 { width: 36.5%; margin-right: 1.5%; }
.featured-logos .schools-logo2 { width: 31%; margin-right: 1.5%; }
.featured-logos .schools-logo3 { width: 28%; }

.trees-mask { background: #fff url(https://www.gopaintball.co.uk/assets/bg/footer-trees.png) repeat-x center top; height: 232px; width: 100%; position: absolute; top: 0; left: 0; z-index: 1; }
/* --- FOOTER --- */
footer { background: #2d2f26; color: #fff; margin-top: -30px; padding-bottom: 10px; position: relative; padding-top: 270px;}
footer section { overflow: hidden; }
footer .inner { padding: 0 20px;}
.footer-inner { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; margin: 0 auto 60px; }
hr.dashed { border: none; border-top: 3px dashed #40423a; margin: 30px 0; }
footer p.copyright { font-size: 0.9em; }
footer h4 {  font-style: italic; text-transform: uppercase; font-size: 1.8em; margin: 0 0 0.8em;}
footer ul { list-style: none; margin: 0; padding: 0; }
footer li { margin: 2px 0; }
footer li a:link { display: inline-block; padding: 3px 0;}
footer a:link, footer a:visited { color: #fff; text-decoration: none; }
footer a:hover, footer a:focus { color: #c3e49b; text-decoration: underline; }

footer p.logo { margin: -4px 0 30px; }
a.button-ghost:link, a.button-ghost:visited { border: 2px solid #fff; border-radius: 30px; display: inline-block; padding: 8px 30px;}
a.button.button-contact:link, a.button.button-contact:visited, a.button-ghost.button-contact { padding-left: 50px; margin: 0 12px 12px 0; position: relative; }
a.button-contact::before { left: 18px; transform: scale(0.9);}
a.button-contact.email::before { background: url(/assets/icons/help-widget.png) no-repeat 0 -267px; background-size: 21px; }
footer a.button-contact { margin: 8px 0; letter-spacing: 0; }
footer a.button-contact:hover, footer a.button-contact:focus { color: #fff; text-decoration: none; background: rgba(255,255,255,0.1); }

footer p.contact { padding-left: 10px;}

/* Help widget */
#helpbtn { position: fixed; z-index: 999; right: 15px; bottom: 12px; width: 72px; height: 67px; background: url(/assets/icons/help.png?a=1) no-repeat center 4px; background-size: 58px; cursor: pointer; opacity: .9; display: none; }
#helpbtn:hover { opacity: 1; }
#helpwidget { position: fixed; z-index: 999; right: 0; bottom: 0; max-width: 400px; max-height: calc(100vh - 40px); overflow: auto; min-height: 520px;
box-shadow: 2px 2px 10px rgba(0,0,0,0.2); transform: scale(0); transform-origin: 95% 95%; margin: 20px; opacity: 0; transition: .3s all; pointer-events: none; }
#helpwidget, .hw-subpage { background: #eaeae8 url(/assets/bg/grey-camo.png) no-repeat center center; background-size: cover; padding: 15px 26px 10px; border-radius: 10px; }

#helpwidget.open { transform: scale(1); opacity: 1; transition: .5s all; pointer-events: auto;}
#hwclose, .hw-faq-close { width: 50px; height: 50px; background: url(/assets/icons/help-widget.png) no-repeat 15px -130px; background-size: 26px; border: none; cursor: pointer; }
.hw-faq-close { margin: -5px 0 -5px -10px; background-position: 15px -282px;}
#hwclose { position: absolute; right: 0; top: 0; }
.hwlogo { text-align: center; margin: -2px 0 6px; }
.hwlogo img { margin: 0 auto; }
#helpwidget p { line-height: 1.25; }
#helpwidget h3 { margin: -3px 0 0.5em; text-transform: uppercase; font-size: 2em; line-height: 1.1;}
#helpwidget h4 { margin: 0.5em 0 0.35em; text-transform: uppercase; font-size: 1.5em; font-weight: 700; }
.hwfaqs { margin: 0 0 16px; padding-left: 20px; font-size: 1em; }
.hwfaqs li { margin: 3px; line-height: 1.2; padding: 2px 0;}
.hwfaqs a { font-weight: 400; }
.hwctas { display: flex; font-size: 1.6em; font-stretch: condensed; margin: 18px 0 22px;}
.hwctas a { width: 33.3%; text-align: center; padding: 0 5px; color: #000; text-transform: uppercase; text-decoration: none; line-height: 1; font: 0.8em/1 ff-good-headline-web-pro-con, Arial, Helvetica, sans-serif; }
.hw-button { display: inline-block; width: 68px; height: 50px; margin-bottom: 4px; background: #71a828 url(/assets/icons/help-widget.png) no-repeat 18px 9px; background-size: 33px; -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; transition: all 0.3s; }
.hwctas a:hover .hw-button, .hwctas a:focus .hw-button { background-color: #80c228; }
.hw-whatsapp .hw-button { background-position: 18px -274px; }
.hw-book .hw-button { background-position: 19px -86px; }
.hw-email .hw-button { background-position: 18px -411px; }
.hw-subpage { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: none; }
#helpwidget .hw-faq-answer p { font-size: 1.1em; line-height: 1.4; margin: 1em 0; }
#helpwidget .hw-faq-answer p.hw-back { margin: 0 0 0.8em; }
#helpwidget .hw-faq-answer p.hw-more { padding: 0 0 0.8em; }
.hw-faq-answer p.hw-more a { font-size: 1.1em; }
p.hw-phone-lrg { font-weight: 400; font-size: 5em; margin: 0; letter-spacing: -1px; }
p.hw-phone-heading { margin: 1.5em 0 10px; font-size: 1.4em;}
.hw-phone-show .tel-num a {color: #000; font: 3.5em ff-good-headline-web-pro-con, Arial, Helvetica, sans-serif; }

#helpbtn.bounce-bottom { display: block; animation: bounce-bottom 0.9s both; animation-delay: 2s; }
@keyframes bounce-bottom {
0% { transform: translateY(80px); animation-timing-function: ease-in; opacity: 1; }
40% { transform: translateY(24px); animation-timing-function: ease-in; }
65% { transform: translateY(12px); animation-timing-function: ease-in; }
89% { transform: translateY(6px); animation-timing-function: ease-in; }
25%,55%,80%,100% { transform: translateY(0px); animation-timing-function: ease-out; }
}



/* min-width */
@media screen and (min-width:1300px) {
/*
.intro p { font-size: 1.1em; }
.locations { font-size: 1.1em; }
.addresses h2 { font-size: 1.5em; padding: 9px 20px;} */
}

@media screen and (min-width:1420px) {
.details { font-size: 1.1em; }
.details p, .details li { line-height: 1.4; }
}


@media screen and (min-width:1600px) {
.activities { padding: 0 15px;}
.details.paintball .text, .details.zorbing .text { padding-left: 65px; padding-right: 100px;}
.details.lasertag .text { padding-left: 100px; padding-right: 75px; }
a.button, a.button:link, span.button { font-size: 0.9em; }
/*
.locations { font-size: 1.2em; }
.addresses h2 { font-size: 1.6em; padding: 12px 20px;} */
}

@media screen and (min-width:1680px) {
.activity-select .inner, #occasions { max-width: 1600px; }
#occasions li { width: 22%; }
}

@media screen and (min-width:2300px) {
}


/* max-width */
@media screen and (max-width:1600px) {
.slider-nav-wrapper { right: 15px; }
.boxes li:first-child .item { margin-left: 15px; }
.boxes li:last-child .item { margin-right: 15px; }
}

@media screen and (max-width:1450px) {
.hero h1 { -webkit-text-stroke: 2px #fff;  }
}

@media screen and (max-width: 1400px) {
.hero h1 { font-size: clamp(5em, 10.6vw, 10em);}
.subpage-hero .hero h1 { font-size: clamp(4.5em, 9vw, 8em);}

p.strapline{ font-size: clamp(2.4em, 5.025vw, 6em); }
.subpage-hero p.strapline { font-size: clamp(2.4em, 4.6vw, 4em);}
.pg_adventure-camp p.strapline { max-width: 95%; margin-left: auto; margin-right: auto; }
.intro2 .image1 { width: 60%; }
.intro2 .image2 { width: 90%;}
.intro2 { background-size: 60%; }

}

@media screen and (max-width:1330px) {
.details .text { padding: 30px 40px; }
}

@media screen and (max-width:1250px) {
.details .text { padding: 10px 30px; }
.details h2 img { width: 250px; }
.details h3 span { font-size: 1.5em; }
.details h3 { margin-bottom: 0.4em; }
.details p, .details li { margin: 0.8em 0; line-height: 1.25; font-size: 0.95em; }
.details p.buttonpara { font-size: 1em; }
.overview .title { bottom: 25px; padding: 0 22px; }
.overview h3 { font-size: 2.2em; margin-bottom: 0.2em; }
.overview p { font-size: 1em; }
a.button, a.button:link, a.button:visited, span.button { padding: 12px 26px; }
a.button-contact::before { left: 18px; transform: scale(0.9) translateY(-3px);}

}

@media screen and (max-width:1200px) {
.intro2 p { font-size: 1.2em; line-height: 1.5; margin: 0 0 1.35em; }
.intro2 p.large { font-size: 1.4em; line-height: 1.4; }
.intro2 .image2 { margin-top: -50px; }
.intro2 .image:before { left: 20px; top: 115px; background-size: 1400px;}
}

@media screen and (max-width:1100px) {
.details .text { padding: 10px 30px; }
.details h2 img { width: 220px; }
.details h3 span { font-size: 1.55em; padding: 4px 16px; }
.details h3 { margin-bottom: 0.2em; }
section.intro-hero:before, section.intro-hero:after { bottom: 86px; font-size: 6em; }
section.intro-hero:before { bottom: 10px;}
.activity-select { background-image: url(/assets/bg/activities-box-sml.jpg); padding-bottom: 45px; }
.intro2 .image2 { margin-top: -20px; }
.intro2 .image3 { margin-top: -20px; }
 
#occasions h5 { font-size: 2em; bottom: 45px;}
#occasions .button { font-size: 1.6em; min-width: 180px;  padding: 6px 36px; }
#occasions p { bottom: -20px; }
}

@media screen and (max-width:1040px) {
header { margin-bottom: -41px; }
#logo { width: 260px; }
h2 { font-size: 2.6em; }
.intro2 .text { padding-top: 25px;}
.intro2 p { font-size: 1.1em; line-height: 1.45; margin: 0 0 1.15em; }
.intro2 p.large { font-size: 1.3em; }

.intro2 h2 { margin-bottom: 0.4em; font-size: 3em; }
.intro2 .image:before { left: 0px; top: 110px; background-size: 1300px;}
#occasions { font-size: .9em; }
#occasions.twocol { font-size: 1em; }
}

@media screen and (max-width:1000px) {
.details { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.details > div { width: 100%; max-width: 600px; }
  .details .text { padding: 10px 0;}
.details.paintball .images, .details.adventurecamp .images { order: 1; }
.details .images { margin-bottom: 20px;}
.details.zorbing .images { margin: 0; }
.details h2, .details h3, .details .buttonpara { text-align: center; }
.details h2 img { margin: -5px auto 10px; }
.details h3 span { margin-left: auto; margin-right: auto; font-size: 1.8em; }
.details h3 { margin-bottom: 0.4em; }
.details p, .details li { margin: 0.9em 0; line-height: 1.4em; font-size: 0.95em; }
.details .images .details-logo img {  display: none; }
.details .text .details-logo img { display: block; margin: 0 auto 15px; }
section.reviews { padding-bottom: 20px; }

.mobonly { display: block; }
.intro2 .text { flex: 1 1 65%; }
.intro2 .image { flex: 1 1 35%; }
 .intro2 .image1 { width: 70%; }
.intro2 .image2, .intro2 .image3 {  width: 95%; margin-top: 25px; }
.intro2 .text { padding-top: 0;}
.intro2 .inner { padding-top: 10px; }
a.button-contact::before { left: 18px; transform: scale(0.9) translateY(0);}
}

@media screen and (max-width:960px) {
#occasions h5 { bottom: 35px;}
}

@media screen and (max-width:880px) {
#occasions { font-size: .85em;}
#occasions.twocol { font-size: 0.92em; }
.activity-select p { max-width: 600px; margin-left: auto; margin-right: auto;}
.activity-select { padding-bottom: 35px; }
}

@media screen and (max-width:840px) {
#logo { width: 225px; }
header { margin-bottom: -38px; }
#navtoggle { top: 40px; }
section.intro-hero:before, section.intro-hero:after { bottom: 75px; font-size: 5em; -webkit-text-stroke: 1px #fff; height: 300px;}
section.intro-hero:before { bottom: 10px; left: -155px;}
.overview .title { bottom: 20px; padding: 0 18px; }
.overview h3 { font-size: 2em; margin-bottom: 0.1em; }
.overview p { font-size: 0.9em; }
.overview .link { padding-top: 10px; }
.boxes .divider { flex: 0 1 20px; min-width: 20px; max-width: 20px; }
#occasions { max-width: 640px; gap: 2.5%;}
#occasions > br { display: none;}
#occasions li { width: 45%;}
/*
.addresses h2 { font-size: 1.3em; }
.booknow p { font-size: 1.5em; margin: 0.6em 0; }
.booknow .inner { padding: 1px 0 6px; }
*/
footer .col2, footer .col3 { width: 30%;}
}

@media screen and (max-width:820px) {
}

@media screen and (max-width:800px) {
.intro2 .inner { -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center;}
.intro2 .text { display: contents; }
.intro2 .text, .intro2 .image { padding: 0; flex: 1; width: 100%; }
.intro2 .text .intro-pt1 { order: 1; }
.intro2 .text .intro-pt2 { order: 3; }
.intro2 .image { max-width: 500px; padding: 15px 0 25px; order: 2; }
.intro2 .image:before {  left: 40px; top: 15%; background-size: 1200px;}
.intro2 .image1 { width: 55%; }
.intro2 .image2 { width: 75%; margin: -100px auto 0 0; }
.intro2 .image3 { display: none; }
}


@media screen and (max-width:780px) {
footer .col3 { width: 25%;}
.activities .swiffy-slider { margin-bottom: 50px;}
.slider-nav-wrapper { position: absolute; right: 50%; left: auto; top: auto; bottom: 5px; width: 90px; transform: translateX(50%); z-index: 9;}
}


@media screen and (max-width:680px) {
#logo { width: 200px; }
#navtoggle { top: 20px; }
header { margin-bottom: -34px; padding-top: 10px;}
.hero .text { left: 5.5%; bottom: 8%; }
.subpage-hero .hero .text { bottom: 5%;}

.hero h1 { font-size: 4.4em; -webkit-text-stroke: 1.5px #fff;  }
.subpage-hero .hero h1 { font-size: 4.4em;}

p.strapline, .subpage-hero p.strapline{ font-size: 2em }

.footer-inner { -webkit-flex-direction: column; flex-direction: column; }
footer .col2, footer .col3 { width: 100%; margin-top: 30px; padding: 0 15px;}
footer h4 { margin-bottom: 0.4em;}
footer .inner { padding: 0; }
.footer-inner { margin-left: 15px; margin-right: 15px; }
footer p.copyright { padding: 0 30px;}
}

@media screen and (max-width:640px) {
.sticky-header { padding: 4px 0 3px; height: 50px; }

.sticky-header .header-logo { width: 75px;}
.sticky-header.with-button .header-logo { display: none; }
.sticky-header .navtoggle { transform: scale(0.8); top: -2px; left: 10px;}
  .details { padding: 0 20px;}
.featured-logos .feat-logo1 { width: 100%; max-width: 450px; margin: 0;}
.featured-logos .feat-logo2 { width: 100%; max-width: 400px; margin: 0;}
.featured-logos .feat-logo3 { width: 100%; max-width: 320px; margin: 0;}
.featured-logos .schools-logo1 { width: 100%; max-width: 450px;}
.featured-logos .schools-logo2 { width: 100%; max-width: 430px;}
.featured-logos .schools-logo3 { width: 100%; max-width: 350px;}
.featured-logos .corp-logoA1, .featured-logos .corp-logoB1 { width: 100%; max-width: 300px; }
.featured-logos .corp-logoA2, .featured-logos .corp-logoB2 { width: 100%; max-width: 420px; }
.featured-logos .corp-logoA3, .featured-logos .corp-logoB3 { width: 100%; max-width: 300px; }
.trees-mask { background-size: 1000px 181px; height: 181px; }
footer { padding-top: 200px;}

}


@media screen and (max-width:600px) {
h2 { font-size: 2.2em; }
.activity-select { padding-bottom: 20px; }
.activity-select h2 { font-size: 3.1em; }
.activity-select p { font-size: 0.9em; }
section p.small-pre-h2 { font-size: 1.7em; }
#occasions h5 { bottom: 25px;}
#occasions { gap: 0 0.5em;}
.boxes .item { min-height: 350px; }
.details h3 span { font-size: 1.6em; line-height: 1; padding: 6px 16px; }
}

@media screen and (max-width:550px) {
#occasions { font-size: .8em;}
.hero { padding: 0; }
.hero img { border-radius: 0; }
header { margin-bottom: -29px; }
.hero .text { left: 15px; right: 15px;  bottom: 5%; text-align: center; }
p.strapline{ font-size: 2.4em }
p.strapline br { display: inline; }
.hero h1 { font-size: 4em; margin-bottom: 6px;}

}


@media screen and (max-width:500px) {
.intro2 h2 { margin-top: -0.2em; font-size: 2.8em; }
#occasions { font-size: .95em; max-width: 380px; padding: 0 15px;}
#occasions li { width: 100%; height: 250px; margin: 0 0 20px; overflow: hidden; border-radius: 15px;}
#occasions p { bottom: 15px;}
#occasions h5 { bottom: 70px; font-size: 2.2em;}
#occasions img { width: 110%; position: relative; left: -5%; margin: -30px 0 -10px; }
#occasions li.occ-pb-adult img { margin: -15px 0 -10px; }
#occasions li.occ-pb-school img { margin: 0 0 -10px; }
#occasions li.occ-ac img { margin: -5px 0 -10px 15px; }
#occasions a:after { background: linear-gradient(0deg, rgba(0,0,0,1) 10%, rgba(0,0,0,0) 65%); }
.details { margin: 40px auto;}
.featured-logos { padding-left: 15px; padding-right: 15px; }
}


@media screen and (max-width:450px) {
.intro2 .image:before {  left: 0px; top: 17%; background-size: 1000px;}
.intro2 .image1 { width: 65%; }
.intro2 .image2 { width: 85%; margin: -55px auto 0 0; }
.details .text { padding: 10px 15px; }
footer .logo img { width: 200px;}
}

@media screen and (max-width:420px) {
#navtoggle { transform: scale(0.9); }
.hero h1 { font-size: 3.8em; margin-bottom: 8px;}
}

@media screen and (max-width:400px) {
.three-boxes .item { min-width: 320px; max-width: 320px; }
.trees-mask { background-size: 800px 145px; height: 145px; }
footer { padding-top: 160px;}
}

@media screen and (max-width:370px) {
.three-boxes .item { min-width: 300px; max-width: 300px; }
.three-boxes .item { min-width: 285px; max-width: 285px; }
}

