PageSourceSearch

https://paultonspark.co.uk/tickets/

html paultonspark.co.uk collected 2026-09-24 18:42:11 UTC 25,065 bytes, 440 lines download raw bytes

1<!doctype html>
2<html class="ticket-flow" lang="en">
3    <head>
4                    <meta charset="utf-8">
5            <meta name="viewport" content="width=device-width, minimum-scale=1, initial-scale=1">
6                                                    
6<script>
7                        window.dataLayer = window.dataLayer || [];
8                                                window.dataLayer.push=function(){Array.prototype.push.apply(this,arguments);var arg=arguments[0]||[];"event"===arg[0]&&arg[2]instanceof Object&&"function"==typeof arg[2].event_callback&&setTimeout((function(){arg[2].event_callback()}),1)};
9                        function gtag(){dataLayer.push(arguments);}
10                    </script>
10
11                
12    
12<script>
13    gtag({
14        'event': 'productDetail',
15        'ecommerce': {
16            'detail': {
17                'products': [{
18                    'name': 'Day Tickets'
19                }]
20            }
21        }
22    });
23</script>
23
24
25                <!-- Adobe Fonts -->
26                <link rel="stylesheet" href="https://use.typekit.net/xrh3inh.css">
27                <link href="https://fonts.googleapis.com/css2?family=Parkinsans:[email protected]&display=swap" rel="stylesheet">
28
29                <!-- Google Tag Manager -->
30                                
30<script>
vendor: 359 bytes, lines 30-34
30(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
31        new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
32        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
33        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
34        })(window,document,'script','dataLayer','
34GTM-M36F526
vendor: 3 bytes, line 34
34');
34</script>
34
35                <!-- End Google Tag Manager -->
36                                                    
37                        <meta name="description" content="View our ticket prices. Entry to Peppa Pig World included with all purchases, and children under one meter tall visit for free! Discounts available here.">
38                            <meta property="og:image" content="https://paultonspark.co.uk/paultons_logo_og.jpg">
39                        <base href="https://paultonspark.co.uk/">
40            <title>Ticket Prices (Including Peppa Pig World) | Paultons Park</title>
41            <style>@view-transition{navigation:auto}@keyframes move-in-from-left{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes move-out-to-left{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes move-in-from-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes move-out-to-right{0%{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}:root{view-transition-name:page}#content{min-height:100vh}:root{&[data-transition=reload]{&::view-transition-old(page){animation:fade-out .15s ease-in both}&::view-transition-new(page){animation:fade-in .15s ease-in both}}&[data-transition=push]{&::view-transition-old(page){animation:move-out-to-left .15s ease-in both}&::view-transition-new(page){animation:move-in-from-right .15s ease-in both}}&[data-transition=pop]{&::view-transition-old(*){animation:move-in-from-left .15s ease-in both}&::view-transition-new(*){animation:move-out-to-right .15s ease-in both}}}</style>
42
43<script async blocking="render">(()=>{if(!("CSSViewTransitionRule"in window))return;window.addEventListener("pagereveal",async e=>{if(e.viewTransition){var t,n;if(window.navigation&&window.navigation.activation&&window.navigation.currentEntry?(t=window.navigation.activation.from.url,n=window.navigation.currentEntry.url):(t=sessionStorage.getItem("fromUrl"),n=window.location.href,sessionStorage.setItem("fromUrl",n)),!t||!n){e.viewTransition.skipTransition();return}document.documentElement.dataset.transition=d(t,n),await e.viewTransition.finished,delete document.documentElement.dataset.transition}else{var i;if(window.navigation&&window.navigation.activation?i=navigation.activation.navigationType==="reload":i=window.performance.getEntriesByType("navigation")[0].type==="reload",i){document.documentElement.dataset.transition="reload";const a=document.startViewTransition(()=>{});try{await a.finished,delete document.documentElement.dataset.transition}catch(o){console.warn(o)}}}});const r=["/tickets","/tickets/extras","/checkout","/checkout/complete"],d=(e,t)=>{const n=new URL(e),i=new URL(t),a=n.pathname.replace(/\/$/,""),o=i.pathname.replace(/\/$/,"");if(a===o)return"reload";const s=r.indexOf(a),c=r.indexOf(o);return s>-1&&c>-1?s<c?"push":"pop":(console.warn("Unmatched Route Handling!"),"none")}})();
44</script>
vendor: 1 bytes, line 44
44
45<script type="speculationrules">{"prerender":[{"source":"document","where":{"href_matches":"/*"},"eagerness":"moderate"}]}</script>
45
46
47
48            
49            
49<script>
50    (function () {
51        var PENDING_KEY = "ppkPendingIdentify";
52
53        /**
54         * Forms that post away from the site (the footer newsletter signup posts straight to
55         * Dotdigital) can't push on submit, as the navigation kills the tag before it fires.
56         * They stash the address instead and we push it on the next page load.
57         */
58        window.ppkDeferIdentify = function (email) {
59            try {
60                sessionStorage.setItem(PENDING_KEY, email);
61            } catch (e) {
62                window.ppkIdentify(email);
63            }
64        };
65
66        window.ppkIdentify = function (email) {
67            if (!email) {
68                return;
69            }
70
71            gtag("event", "identify", { email: email });
72        };
73
74        try {
75            var pending = sessionStorage.getItem(PENDING_KEY);
76
77            if (pending) {
78                sessionStorage.removeItem(PENDING_KEY);
79                window.ppkIdentify(pending);
80            }
81        } catch (e) {
82            // Storage unavailable - nothing to replay.
83        }
84
85                    })();
86</script>
86
87
88
89                            
89<script>
90    (function() {
91        var lineItems = [];
92
93        
94                
95                
96        if (lineItems.length > 0) {
97            gtag('event', 'cartInsight', {
98                programID: 321271,
99                cartDelay: 30,
100                cartPhase: 'ORDER_TICKETS',
101                cartID: '',
102                currency: 'GBP',
103                                subtotal: 0,
104                discountAmount: 0.00,
105                grandTotal: 0.00,
106                                cartUrl: 'https://paultonspark.co.uk/checkout/',
107                lineItems: lineItems
108            });
109        }
110    })();
111</script>
111
112
113            
114            
115            <link rel="preload" href="/assets/fonts/OpenSans-Regular.771f0675.woff2" as="font" type="font/woff2" crossorigin>
116            <link rel="preload" href="/assets/fonts/OpenSans-Italic.5a7e80ec.woff2" as="font" type="font/woff2" crossorigin>
117            <link rel="preload" href="/assets/fonts/glyphicons-halflings-regular.be810be3.woff2" as="font" type="font/woff2" crossorigin>
118            <link rel="preconnect" href="https://cdn.paultonspark.co.uk">
119                            <style>
120    :root {
121        --solid-bg-color: #311146;
122        --peppa-container-top-bg: url("/assets/images/home/yellow-wave-top.df497dec.svg");
123        --gradient-start: #6e2e84;
124        --gradient-end: #3a195e;
125        --btn-bg-color: #05bff3;
126        --btn-text-color: #fff;
127        --footer-stars-bg: url("/assets/images/footer/footer-stars.bc6abe85.svg");
128        --footer-stars-bg-mob: url("/assets/images/footer/footer-stars-mob.f3579543.svg");
129        --home-welcome-bg: url("/assets/images/home/colour-left-stars.1677a3c8.svg");
130        --footer-gradient-start: #65347f;
131        --footer-gradient-end: #3a195e;
132        --animation-01: ghost-01 2s ease-in-out alternate infinite;
133        --animation-02: ghost-02 2.6s ease-in-out alternate infinite;
134        --animation-03: ghost-03 3s ease-in-out alternate infinite;
135    }
136</style>
137
138                <link rel="stylesheet" href="/assets/css/style.a969addc.css">
139                        <meta name="google-site-verification" content="MiKfcdHluRFmpoRFFHedWh0CaaApZ0tnurQ7Y-0Ik38">
140            <meta name="theme-color" content="#634d89">
141            <meta name="format-detection" content="telephone=no">
142            <meta name="facebook-domain-verification" content="pk44sfa01pm7336e6tvyxvevm3uxq2">
143            <meta name="algolia-site-verification" content="478B5F738718D800">
144            <link rel="manifest" href="https://paultonspark.co.uk/manifest.json" crossorigin="use-credentials">
145            <link rel="icon" type="image/x-icon" href="https://paultonspark.co.uk/favicon.ico">
146                                                                                                        <link rel="canonical" href="https://paultonspark.co.uk/tickets/">
147                            
148    
148<script async src="https://js.klarna.com/web-sdk/v1/klarna.js" data-client-id="4c420b45-e4d7-52b1-bf3e-e172747b7315"></script>
vendor: 1 bytes, line 148
148
149<script async src="https://js.afterpay.com/afterpay-1.x.js"></script>
149
150
151                        </head>
152    <body
153        ng-app="app"
154        data-root-uri="https://paultonspark.co.uk/"
155        data-max-date-ticket-sales="2027-01-03"
156        data-reduced-vat-start="2026-06-25"
157        data-reduced-vat-end="2026-09-01"
158        data-group-tickets-closed-start="2026-11-03"
159        data-group-tickets-closed-end="2026-11-30"
160        data-now="2026-09-24T19:42:11+01:00"
161        data-display-checkout-exit-popup="true"
162        ng-strict-di
163        class=" page-tickets collapsed seasonal-template-default"
164        ng-class="{'park-closed-today': !isParkOpenToday, 'alert-visible': isAlertVisible, 'nav-open no-scroll': !nav.collapsed || nav.open.basket}"
165        ng-controller="AppController"
166            >
167                    <!-- Google Tag Manager (noscript) -->
vendor: 117 bytes, lines 167-170
167
168            <noscript
169                ><iframe
170                    src="https://www.googletagmanager.com/ns.html?id=
170GTM-M36F526
vendor: 185 bytes, lines 170-176
170"
171                    height="0"
172                    width="0"
173                    style="display:none;visibility:hidden"
174                ></iframe
175            ></noscript>
176            
176<!-- End Google Tag Manager (noscript) -->
177            <header class="header ">
178                                                </header>
179                        <main id="content" class="" itemscope itemtype="https://schema.org/Ticket" ppk-skip-link>
180                        <div class="pb-0" ng-controller="DatedTicketsController">
181        <div class="progress-bar-container">
182            <div class="slim-container" ng-cloak ng-if="vars.display.calendar">
183                <div class="checkout-progress-bar">
184    <div class="progress">
185                    <div class="progress-step">
186    <img class="point" src="/assets/images/progress-bar/step-current.8d904450.png" width="72" height="72" alt="Tickets">
187    <div class="title text-uppercase">
188                    <span>Date</span>
189            </div>
190</div>
191
192            <img class="dash" src="/assets/images/progress-bar/dash-next.882e1815.png" width="31" height="7" alt="Dash">
193            <div class="progress-step">
194    <img class="point" src="/assets/images/progress-bar/step-next.f722a556.png" width="72" height="72" alt="Tickets">
195    <div class="title text-uppercase">
196                    <span>Tickets</span>
197            </div>
198</div>
199
200                <img class="dash" src="/assets/images/progress-bar/dash-next.882e1815.png" width="31" height="7" alt="Dash">
201        <div class="progress-step">
202    <img class="point" src="/assets/images/progress-bar/step-next.f722a556.png" width="72" height="72" alt="Tickets">
203    <div class="title text-uppercase">
204                    <span>Extras</span>
205            </div>
206</div>
207
208        <img class="dash" src="/assets/images/progress-bar/dash-next.882e1815.png" width="31" height="7" alt="Dash">
209        <div class="progress-step">
210    <img class="point" src="/assets/images/progress-bar/step-next.f722a556.png" width="72" height="72" alt="Tickets">
211    <div class="title text-uppercase">
212                    <span>Payment</span>
213            </div>
214</div>
215
216    </div>
217</div>
218
219            </div>
220            <div class="slim-container" ng-cloak ng-if="!vars.display.calendar">
221                <div class="checkout-progress-bar">
222    <div class="progress">
223                    <div class="progress-step">
224    <img class="point" src="/assets/images/progress-bar/step-completed.6553644b.png" width="72" height="72" alt="Tickets">
225    <div class="title text-uppercase">
226                    <span>Date</span>
227            </div>
228    </div>
229
230            <img class="dash" src="/assets/images/progress-bar/dash-completed.0b38a129.png" width="31" height="7" alt="Dash">
231            <div class="progress-step">
232    <img class="point" src="/assets/images/progress-bar/step-current.8d904450.png" width="72" height="72" alt="Tickets">
233    <div class="title text-uppercase">
234                    <span>Tickets</span>
235            </div>
236</div>
237
238                <img class="dash" src="/assets/images/progress-bar/dash-next.882e1815.png" width="31" height="7" alt="Dash">
239        <div class="progress-step">
240    <img class="point" src="/assets/images/progress-bar/step-next.f722a556.png" width="72" height="72" alt="Tickets">
241    <div class="title text-uppercase">
242                    <span>Extras</span>
243            </div>
244</div>
245
246        <img class="dash" src="/assets/images/progress-bar/dash-next.882e1815.png" width="31" height="7" alt="Dash">
247        <div class="progress-step">
248    <img class="point" src="/assets/images/progress-bar/step-next.f722a556.png" width="72" height="72" alt="Tickets">
249    <div class="title text-uppercase">
250                    <span>Payment</span>
251            </div>
252</div>
253
254    </div>
255</div>
256
257            </div>
258        </div>
259
260        <div class="container-fluid">
261            <h1 class="text-center" ng-cloak ng-if="vars.display.calendar">When would you like your best day ever?</h1>
262        </div>
263        <div class="slim-container padding-bottom">
264            <div id="pageTransitionContainer">
265                <h2 class="h1 text-center" ng-cloak ng-if="!vars.display.calendar">Choose your tickets</h2>
266                <div class="alert alert-danger" ng-if="apiError" ng-cloak>{[{ apiError }]}</div>
267                <div ng-hide="apiError">
268                    <ppk-loading-spinner ng-show="busy.loading"></ppk-loading-spinner>
269                    <div class="selection-container w-100" ng-init="total = 0" ng-hide="busy.loading" ng-cloak>
270                        <div
271                            id="calendarAnchor"
272                            class="calendar-container container w-100 pt-0 mb-0 pb-0 clearfix"
273                            ng-init="vars.setVisitDate(''); vars.setSelectedPeopleQuantity('0'); vars.setIsTwoDay(false)"
274                        >
275                            <ppk-availability-calendar
276                                date="input.date"
277                                selected-day="vars.selectedDay"
278                                show-calendar="vars.display.calendar"
279                                loading="busy.loading"
280                                selected-date-info
281                                select-first-date
282                                disable-today-after-cutoff
283                                extended
284                                show-reduced-vat
285                                show-prices
286                                compact
287                            ></ppk-availability-calendar>
288                            <div class="alert alert-danger" ng-show="vars.soldOutWarning">This day is fully booked, please select another day to visit</div>
289
290                            <div ng-show="!vars.display.calendar">
291                                <ppk-ticket-calculator
292                                    tickets="tickets"
293                                    input="input"
294                                    total="vars.total"
295                                    ticket-url="'/tickets/calculate-ticket'"
296                                    selected-people-quantity="vars.model.selectedPeopleQuantity"
297                                    selected-day="vars.selectedDay"
298                                    is-two-day="vars.isTwoDay"
299                                    set-is-two-day="vars.setIsTwoDay"
300                                    loading="vars.calculatorLoading"
301                                >
302                                                                            <ul><li data-list-item-id="e2a9f22db99e1ff97a3a9352cb59fd872">No family tickets are required.</li><li data-list-item-id="eb119587c0d27cd3f4980cd333652c631">When an entry ticket is presented, all members of the group must enter the Park at the same time.</li><li data-list-item-id="e1d0b8573e0b180259c2cce951bf63983">If you need individual tickets, please ask at the ticket office upon arrival.</li><li data-list-item-id="ee60bdebfb17ef3166b7db9ee4f7e630b">All tickets are non-refundable.</li><li data-list-item-id="e5458621c63c6311f80ae05e224c89c47">Tickets are valid for the date printed on the ticket only.</li><li data-list-item-id="e5816fecbc0e9ee8418efd183ca93696b">Please note that access to our Queue Assist Scheme is limited to ensure that Paultons Park can provide your family with a high quality experience. As such, <strong>the Queue Assist Scheme must be pre-booked.</strong></li><li data-list-item-id="ee98cb0434ddef9eee742f5888540aa35">Further terms and conditions apply upon checking out.</li></ul>
303                                                                    </ppk-ticket-calculator>
304                            </div>
305                        </div>
306                        <section class="checkout-wrapper-fixed pt-0" ng-show="vars.canCheckout && !vars.display.calendar">
307                            <div class="text-right">
308                                <div class="total mb-1">
309                                    <span class="total-text">Total:</span>
310                                    <span class="total-value">{[{ vars.total | formatMoney }]}</span>
311                                </div>
312                                <div class="visit-date mb-1">
313                                    <span>
314                                        Visit Date{[{ vars.isTwoDay ? 's' : '' }]}:
315                                        <strong>{[{ input.date | amDateFormat: 'dddd Do MMMM YYYY' }]} <span ng-if="vars.isTwoDay"> and {[{ input.date | amAdd : '1' : 'days' | amDateFormat: 'dddd Do MMMM YYYY' }]}</span></strong>
316                                    </span>
317                                </div>
318                            </div>
319                            <div class="alert alert-danger" ng-show="vars.purchaseError">{[{ vars.purchaseError }]}</div>
320                            <div class="checkout-btn-wrapper">
321                                <button
322                                    type="button"
323                                    class="btn btn-primary spinner-btn"
324                                    ng-click="submit()"
325                                    ng-disabled="busy.submitting || !vars.canCheckout || vars.calculatorLoading"
326                                    ng-class="{busy: busy.submitting}"
327                                    ng-init="submitUrl = '/tickets/book'; checkoutUrl = '/tickets/extras';"
328                                >
329                                    <span data-busy-text="">Next<span class="glyphicon glyphicon-chevron-right btn-chevron"></span></span>
330                                </button>
331                            </div>
332                        </section>
333                    </div>
334                </div>
335            </div>
336        </div>
337    </div>
338            </main>
339
340                    <footer id="footer" class="footer-slim">
341        <div class="container">
342            <div class="logo-container d-flex justify-content-center mb-1">
343                <a href="/">
344                    <img
345                        src="https://cdn.paultonspark.co.uk/assets/images/lazy.gif"
346                        lazy-src="/assets/images/logos/footer-logos/paultons-logo-white.675fd10a.svg"
347                        width="90"
348                        height="85"
349                        class="larger-logo"
350                        alt="Paultons Park Logo"
351                    >
352                </a>
353            </div>
354
355            <div id="copyrightContainer" class="col-md-6 col-md-offset-3 col-xs-12 text-center">
356                <p itemscope itemtype="https://schema.org/PostalAddress">
357    Paultons and <span itemprop="name">Paultons Park</span> are registered trademarks of Paultons Park Limited. Registered Office: Paultons Park, <span itemprop="streetAddress">Ower, Romsey</span>,
358    <span itemprop="addressLocality">The New Forest</span>, <span itemprop="addressRegion">Hampshire</span>, <span itemprop="postalCode">SO51 6AL</span>. Registered in England No. 2029374 VAT No. 225 5113 41
359</p>
360
361            </div>
362        </div>
363    </footer>
364
365
366            
367            
367<script type="text/ng-template" id="removeMembershipModalContent.html">
368    <div class="modal-header">
369        <button type="button" class="close" aria-label="Close" ng-click="cancel()"><span aria-hidden="true">×</span></button>
370        <h3 class="modal-title">Remove all accounts?</h3>
371    </div>
372    <div class="modal-body">
373        <p>This is the primary account. Removing it will also remove all linked accounts from your basket.</p>
374        <p>Are you sure you want to continue?</p>
375    </div>
376    <div class="modal-footer text-center">
377        <button type="button" class="btn btn-default" ng-click="cancel()">Cancel</button>
378        <button type="button" class="btn btn-primary" ng-click="confirm()">Remove all accounts</button>
379    </div>
380</script>
380
381
382
383                
383<script id="uib/template/datepicker/day.html" type="text/ng-template">
384    <table role="grid" aria-labelledby="{[{::uniqueId }]}-title" aria-activedescendant="{[{activeDateId }]}">
385        <thead>
386        <tr>
387            <th>
388                <button type="button" class="btn btn-default btn-sm pull-left uib-left" ng-click="move(-1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-left"></i><span class="sr-only">previous</span></button>
389            </th>
390            <th colspan="{[{::5 + showWeeks }]}">
391                <button id="{[{::uniqueId }]}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm uib-title" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1"><strong>{[{title }]}</strong></button>
392            </th>
393            <th>
394                <button type="button" class="btn btn-default btn-sm pull-right uib-right" ng-click="move(1)" tabindex="-1"><i aria-hidden="true" class="glyphicon glyphicon-chevron-right"></i><span class="sr-only">next</span></button>
395            </th>
396        </tr>
397        <tr>
398            <th ng-if="showWeeks" class="text-center"></th>
399            <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{[{::label.full }]}">{[{::label.abbr }]}</small></th>
400        </tr>
401        </thead>
402        <tbody>
403        <tr class="uib-weeks" ng-repeat="row in rows track by $index" role="row">
404            <td ng-if="showWeeks" class="text-center h6"><em>{[{weekNumbers[$index] }]}</em></td>
405            <td ng-repeat="dt in row" class="uib-day text-center" role="gridcell"
406                id="{[{::dt.uid}]}"
407                ng-class="::dt.customClass"
408                ng-init="popoverText = (dt.customClass.indexOf('day-closed') > -1 ? 'Closed' : 'This day is sold out')"
409            >
410                <div
411                    uib-popover="{[{ ::popoverText }]}"
412                    popover-placement="bottom"
413                    popover-enable="::dt.disabled && dt.customClass.indexOf('day-no-popover') === -1"
414                    popover-trigger="'mouseenter outsideClick'"
415                >
416                    <button type="button" class="btn btn-default btn-sm"
417                            uib-is-class="
418                            'btn-info' for selectedDt,
419                            'active' for activeDt
420                            on dt"
421                            ng-click="select(dt.date)"
422                            tabindex="-1"
423                            ng-class="{'disabled': dt.disabled}"
424                            ng-disabled="dt.disabled"
425
426                    >
427                        <span ng-class="::{'text-muted': dt.secondary, 'text-info': dt.current}">{[{::dt.label }]}</span>
428                    </button>
429                    <span class="day-price" ppk-day-price="dt.date"></span>
430                </div>
431            </td>
432        </tr>
433        </tbody>
434    </table>
435</script>
435
436
437                    
437<script src="/assets/runtime.2e41caff.js"></script>
437<script src="/assets/531.f37afd07.js"></script>
437<script src="/assets/js/app.3e459bef.js"></script>
437
438            
439            </body>
440</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.