PageSourceSearch

https://golfpiste.com/plus-info/

html golfpiste.com collected 2026-10-01 12:22:36 UTC 211,057 bytes, 4,804 lines download raw bytes

1<!DOCTYPE html>
2<!--[if IE 7]>
3<html class="ie ie7" lang="fi">
4<![endif]-->
5<!--[if IE 8]>
6<html class="ie ie8" lang="fi">
7<![endif]-->
8<!--[if IE 9]>
9<html class="ie ie9" lang="fi">
10<![endif]-->
11<!--[if !(IE 7) | !(IE 8) | !(IE 9)]><!-->
12<html lang="fi">
13<!--<![endif]-->
14<head>
15
16    
17	<!-- Head tag start, do not remove -->
18
19<!-- // golfpiste.com -->
20
21<script type="text/javascript">
22
23	const timerStart = Date.now();
24	window.timerStart = timerStart;
25	var dfpDebug = document.location.href.indexOf("dfpdebug=1") > -1 ? true : false;
26	var cmpDebug = document.location.href.indexOf("cmpdebug=1") > -1 ? true : false;
27	var testSRA = document.location.href.indexOf("testsra=1") > -1 ? true : true;
28	var useAdvantage = useAdvantage ||location.href.includes('?testadvantage1');
29
30</script>
30
31
32<script src="https://storage.googleapis.com/om-gravito-cmp/om_gravito_stubScriptTag.js"></script>
32
33<!--script async src="https://storage.googleapis.com/om-gravito-cmp/otavaScript.js"></script-->
34<script>
35
36	if (location.href.indexOf('testnewcmp=1') >= -1) {
37
38		var cookieMatch = document.cookie.match(/(?:^|;\s*)TcString=([^;]+)/);
39		var tcString = cookieMatch ? decodeURIComponent(cookieMatch[1]) : null;
40
41		if (tcString || (window.tcstring_decoded && window.tcstring_decoded.tcString)) {
42
43			if (cmpDebug) {console.log('Testing local __tcfapi...')}
44
45			var decoded = window.tcstring_decoded || {};
46
47			var tcData = {
48				tcString: tcString || decoded.tcString,
49				version: 2,
50				gdprApplies: true,
51				cmpId: decoded.cmpId || 0,
52				cmpVersion: decoded.cmpVersion || 0,
53				tcfPolicyVersion: 0,
54				vendorListVersion: decoded.vendorListVersion || 0,
55				eventStatus: "tcloaded",
56				cmpStatus: "loaded",
57				purpose: decoded.purpose || { consents: {}, legitimateInterests: {} },
58				vendor: decoded.vendor || { consents: {}, legitimateInterests: {} },
59				publisher: decoded.publisher || { consents: {}, legitimateInterests: {} },
60				specialFeatureOptins: decoded.specialFeatureOptins || {}
61			};
62
63			var __tcfapiListeners = {};
64			var __tcfapiNextId = 1;
65
66			window.__tcfapi = function(command, version, callback, parameter) {
67
68				var haveValidString = !!tcData.tcString;
69
70				switch (command) {
71					case "ping":
72						callback({
73							cmpLoaded: true,
74							cmpStatus: "loaded",
75							tcfPolicyVersion: tcData.tcfPolicyVersion
76						}, true);
77						break;
78					case "getTCData":
79						callback(haveValidString ? tcData : null, haveValidString);
80						break;
81					case "getTCString":
82						callback(haveValidString ? tcData.tcString : null, haveValidString);
83						break;
84					case "addEventListener":
85						var id = __tcfapiNextId++;
86						__tcfapiListeners[id] = callback;
87						callback(haveValidString ? tcData : null, haveValidString);
88						break;
89					case "removeEventListener":
90						if (parameter && __tcfapiListeners[parameter]) {
91							delete __tcfapiListeners[parameter];
92							callback(true, true);
93						} else {
94							callback(false, false);
95						}
96						break;
97					default:
98						callback(null, false);
99				}
100
101				if (cmpDebug) {
102					console.log("[__tcfapi call]", {command, version, parameter});
103					console.log("[__tcfapi response]", {
104						time: (Date.now() - timerStart) + 'ms',
105						command: command,
106						returnedTcString: haveValidString ? tcData.tcString : null,
107						decodedObject: decoded || null
108					});
109				}
110
111			};
112
113		}
114
115	}
116
117	if (cmpDebug) {
118		__tcfapi('getTCData', 2, (tcData, success) => {
119			console.log('testdata3: ' + (Date.now() - timerStart) + 'ms --> ', tcData, success);
120		});
121	}
122
123	function waitForElement(selector) {
124		return new Promise(function(resolve, reject) {
125			var element = document.querySelector(selector);
126			if(element) {
127				resolve(element);
128				return;
129			}
130			var observer = new MutationObserver(function(mutations) {
131				mutations.forEach(function(mutation) {
132					var nodes = Array.from(mutation.addedNodes);
133					for(var node of nodes) {
134						if(node.matches && node.matches(selector)) {
135							observer.disconnect();
136							resolve(node);
137							return;
138						}
139					};
140				});
141			});
142			observer.observe(document.documentElement, { childList: true, subtree: true });
143		});
144	}
145
146	var cmpRnd = Math.floor(Math.random() * 999999);
147	if (location.href.indexOf('testcmp=1') > -1) {
148		waitForElement("body").then(function(element) {
149			(function(d,s,e,t){e=d.createElement(s);e.type='text/java'+s;e.async='async';
150			e.src='http'+('https:'===location.protocol?'s://':'://')+'digitiimi.otavamedia.fi/testi/cmp/otavaScript_stacks_purettu.js?' + cmpRnd;
151			t=d.getElementsByTagName(s)[0];t.parentNode.insertBefore(e,t);})(document,'script');
152		});
153	} else {
154		waitForElement("body").then(function(element) {
155			(function(d,s,e,t){e=d.createElement(s);e.type='text/java'+s;e.async='async';
156			e.src='http'+('https:'===location.protocol?'s://':'://')+'storage.googleapis.com/om-gravito-cmp/otavaScript.js';
157			t=d.getElementsByTagName(s)[0];t.parentNode.insertBefore(e,t);})(document,'script');
158		});
159	}
160
161</script>
161
162
163<script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script>
163
164
165<script>
166
167	var tcfAllowUseCookies = false;
168
169	if (tcstring_decoded) {
170		if (tcstring_decoded.purpose.consents['1']) {
171			tcfAllowUseCookies = true;
172		}
173	}
174
175</script>
175
176
177<script>
178
179	//var testyett = false;
180	var testyett = cmpGetCookie('testyett') == 1 ? true : false;
181	if (document.location.href.indexOf("?testyett") > -1 || testyett) {
182		testyett = true;
183	}
184
185	if (testyett) {
186
187		var EMBEDS_REQUIRED_PURPOSES = [1, 3, 4, 5, 6];
188		var hasRequiredConsent = false;
189
190		if (tcstring_decoded) {
191
192			const consentObject = tcstring_decoded.purpose.consents || {};
193			const consentedPurposes = Object.keys(consentObject).filter(purposeId => consentObject[purposeId]);
194			console.log('consentedPurposes: ' + consentedPurposes);
195
196			hasRequiredConsent = EMBEDS_REQUIRED_PURPOSES.every(
197				purpose => consentedPurposes.includes(purpose)
198			);
199			console.log('hasRequiredConsent: ' + hasRequiredConsent);
200
201		}
202
203		window.YETT_BLACKLIST = [
204			/.*facebook\.com/,
205			/.*facebook\.net/,
206			/.*imgur\.com/,
207			/.*infogram\.com/,
208			/.*instagram\.com/,
209			/.*qualifio\.com/,
210			/.*reddit\.com/,
211			/.*screen9\.com/,
212			/.*soundcloud\.com/,
213			/.*thinglink\.me/,
214			/.*tiktok\.com/,
215			/.*twitter\.com/,
216			/.*vimeo\.com/,
217			/.*youtube\.com/,
218			/.*app-us1\.com/,
219			/.*iro\.fi/,
220			/.*spofity\.com/
221		]
222		// OR
223		window.YETT_WHITELIST = [
224			// /my-whitelisted-domain/
225		]
226
227		//document.write('
227<script src="https://storage.googleapis.com/om-gravito-cmp/runYett.js"><\/script>');
228
229		function runYett() {!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).yett={})}(this,(function(e){"use strict";var t="javascript/blocked",r={blacklist:window.YETT_BLACKLIST,whitelist:window.YETT_WHITELIST},i={blacklisted:[]},n=(e,i)=>e&&(!i||i!==t)&&(!r.blacklist||r.blacklist.some((t=>t.test(e))))&&(!r.whitelist||r.whitelist.every((t=>!t.test(e)))),c=function(e){var t=e.getAttribute("src");return r.blacklist&&r.blacklist.every((e=>!e.test(t)))||r.whitelist&&r.whitelist.some((e=>e.test(t)))},s=new MutationObserver((e=>{for(var r=0;r<e.length;r++)for(var{addedNodes:c}=e[r],s=function(e){var r=c[e];if(1===r.nodeType&&"SCRIPT"===r.tagName){var s=r.src,o=r.type;if(n(s,o)){i.blacklisted.push([r,r.type]),r.type=t;r.addEventListener("beforescriptexecute",(function e(i){r.getAttribute("type")===t&&i.preventDefault(),r.removeEventListener("beforescriptexecute",e)})),r.parentElement&&r.parentElement.removeChild(r)}}},o=0;o<c.length;o++)s(o)}));function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}s.observe(document.documentElement,{childList:!0,subtree:!0});var p=document.createElement,u={src:Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"src"),t
229ype:Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"type")};document.createElement=function(){for(var e=arguments.length,r=new Array(e),i=0;i<e;i++)r[i]=arguments[i];if("script"!==r[0].toLowerCase())return p.bind(document)(...r);var c=p.bind(document)(...r);try{Object.defineProperties(c,{src:l(l({},u.src),{},{set(e){n(e,c.type)&&u.type.set.call(this,t),u.src.set.call(this,e)}}),type:l(l({},u.type),{},{get(){var e=u.type.get.call(this);return e===t||n(this.src,e)?null:e},set(e){var r=n(c.src,c.type)?t:e;u.type.set.call(this,r)}})}),c.setAttribute=function(e,t){"type"===e||"src"===e?c[e]=t:HTMLScriptElement.prototype.setAttribute.call(c,e,t)}}catch(e){console.warn("Yett: unable to prevent script execution for script src ",c.src,".\n",'A likely cause would be because you are using a third-party browser extension that monkey patches the "document.createElement" function.')}return c};var b=new RegExp("[|\\{}()[\\]^$+*?.]","g");e.unblock=function(){for(var e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];n.length<1?(r.blacklist=[],r.whitelist=[]):(r.blacklist&&(r.blacklist=r.blacklist.filter((e=>n.every((t=>"string"==typeof t?!e.test(t):t instanceof RegExp?e.toString()!==t.toString():void 0))))),r.whitelist&&(r.whitelist=[...r.whitelist,...n.map((e=>{if("string"==typeof e){var t=".*"+e.replace(b,"\\$&")+".*";if(r.whitelist.every((e=>e.toString()!==t.toString())))return new RegExp(t)}else if(e instanceof RegExp&&r.whitelist.every((t=>t.toString()!==e.toString())))return e;return null})).filter(Boolean)]));for(var l=document.querySelectorAll('script[type="'.concat(t,'"]')),a=0;a<l.length;a++){var p=l[a];c(p)&&(i.blacklisted.push([p,"application/javascript"]),p.parentElement.removeChild(p))}var u=0;[...i.blacklisted].forEach(((e,t)=>{var[r,n]=e;if(c(r)){for(var s=document.createElement("script"),o=0;o<r.attributes.length;o++){var l=r.attributes[o];"src"!==l.name&&"type"!==l.name&&s.setAttribute(l.name,r.attributes[o].value)}s.setAttribute("src",r.src),s.setAttribute("type",n||"application/javascript"),document.head.appendChild(s),i.blacklisted.splice(t-u,1),u++}})),r.blacklist&&r.blacklist.length<1&&s.disconnect()},Object.defineProperty(e,"__esModule",{value:!0})}));}
230
231		//!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).yett={})}(this,(function(t){"use strict";var e="javascript/blocked",r={blacklist:window.YETT_BLACKLIST,whitelist:window.YETT_WHITELIST},n={blacklisted:[]},i=function(t,n){return t&&(!n||n!==e)&&(!r.blacklist||r.blacklist.some((function(e){return e.test(t)})))&&(!r.whitelist||r.whitelist.every((function(e){return!e.test(t)})))},o=function(t){var e=t.getAttribute("src");return r.blacklist&&r.blacklist.every((function(t){return!t.test(e)}))||r.whitelist&&r.whitelist.some((function(t){return t.test(e)}))},c=new MutationObserver((function(t){for(var r=0;r<t.length;r++)for(var o=t[r].addedNodes,c=function(t){var r=o[t];if(1===r.nodeType&&"SCRIPT"===r.tagName){var c=r.src,l=r.type;if(i(c,l)){n.blacklisted.push([r,r.type]),r.type=e;r.addEventListener("beforescriptexecute",(function t(n){r.getAttribute("type")===e&&n.preventDefault(),r.removeEventListener("beforescriptexecute",t)})),r.parentElement&&r.parentElement.removeChild(r)}}},l=0;l<o.length;l++)c(l)}));function l(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function a(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?l(Object(r),!0).forEach((function(e){s(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function s(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function u(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null==r)return;var n,i,o=[],c=!0,l=!1;try{for(r=r.call(t);!(c=(n=r.next()).done)&&(o.push(n.value),!e||o.length!==e);c=!0);}catch(t){l=!0,i=t}finally{try{c||null==r.return||r.return()}finally{if(l)throw i}}return o}(t,e)||f(t,e)||function(){throw new TypeError("Invalid attempt to de
231structure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(t){return function(t){if(Array.isArray(t))return y(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||f(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(t,e){if(t){if("string"==typeof t)return y(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?y(t,e):void 0}}function y(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}c.observe(document.documentElement,{childList:!0,subtree:!0});var b=document.createElement,d={src:Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"src"),t
231ype:Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"type")};document.createElement=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];if("script"!==r[0].toLowerCase())return b.bind(document).apply(void 0,r);var o=b.bind(document).apply(void 0,r);try{Object.defineProperties(o,{src:a(a({},d.src),{},{set:function(t){i(t,o.type)&&d.type.set.call(this,e),d.src.set.call(this,t)}}),type:a(a({},d.type),{},{get:function(){var t=d.type.get.call(this);return t===e||i(this.src,t)?null:t},set:function(t){var r=i(o.src,o.type)?e:t;d.type.set.call(this,r)}})}),o.setAttribute=function(t,e){"type"===t||"src"===t?o[t]=e:HTMLScriptElement.prototype.setAttribute.call(o,t,e)}}catch(t){console.warn("Yett: unable to prevent script execution for script src ",o.src,".\n",'A likely cause would be because you are using a third-party browser extension that monkey patches the "document.createElement" function.')}return o};var v=new RegExp("[|\\{}()[\\]^$+*?.]","g");t.unblock=function(){for(var t=arguments.length,i=new Array(t),l=0;l<t;l++)i[l]=arguments[l];i.length<1?(r.blacklist=[],r.whitelist=[]):(r.blacklist&&(r.blacklist=r.blacklist.filter((function(t){return i.every((function(e){return"string"==typeof e?!t.test(e):e instanceof RegExp?t.toString()!==e.toString():void 0}))}))),r.whitelist&&(r.whitelist=[].concat(p(r.whitelist),p(i.map((function(t){if("string"==typeof t){var e=".*"+t.replace(v,"\\$&")+".*";if(r.whitelist.every((function(t){return t.toString()!==e.toString()})))return new RegExp(e)}else if(t instanceof RegExp&&r.whitelist.every((function(e){return e.toString()!==t.toString()})))return t;return null})).filter(Boolean)))));for(var a=document.querySelectorAll('script[type="'.concat(e,'"]')),s=0;s<a.length;s++){var f=a[s];o(f)&&(n.blacklisted.push([f,"application/javascript"]),f.parentElement.removeChild(f))}var y=0;p(n.blacklisted).forEach((function(t,e){var r=u(t,2),i=r[0],c=r[1];if(o(i)){for(var l=document.createElement("script"),a=0;a<i.attributes.length;a++){var s=i.attributes[a];"src"!==s.name&&"type"!==s.name&&l.setAttribute(s.name,i.attributes[a].value)}l.setAttribute("src",i.src),l.setAttribute("type",c||"application/javascript"),document.head.appendChild(l),n.blacklisted.splice(e-y,1),y++}})),r.blacklist&&r.blacklist.length<1&&c.disconnect()},Object.defineProperty(t,"__esModule",{value:!0})}));
232
233		console.log('Calling runYett: ' + hasRequiredConsent);
234		if(!hasRequiredConsent) {
235			runYett();
236		}
237
238	}
239
240</script>
240
241
242<script>
243	(function() {
244		if( window.innerWidth >= 992 ) {
245			console.log("Loading Desktop Relevant Scripts...");
246			//document.write('
246<script src="https://otava-cdn.relevant-digital.com/static/tags/5e4c4c2b53ca952a90fa7d2c.js">');
247			let element = document.createElement( 'script' );
248			element.src = "https://otava-cdn.relevant-digital.com/static/tags/5e4c4c2b53ca952a90fa7d2c.js";
249			document.head.appendChild(element);
250		} else {
251			console.log("Loading Mobile Relevant Scripts...");
252			//document.write('
252<script src="https://otava-cdn.relevant-digital.com/static/tags/5e4c4c2b53ca952a90fa7d0f.js">');
253			let element = document.createElement( 'script' );
254			element.src = "https://otava-cdn.relevant-digital.com/static/tags/5e4c4c2b53ca952a90fa7d0f.js";
255			document.head.appendChild(element);
256		}
257	})();
258</script>
258
259
260<!-- !! ---- !! -->
261
262<script type="text/javascript">
263
264	console.time("A");
265	console.time("B");
266
267	//var fpaCookie = document.cookie.match('(^|;) ?fullpagead=([^;]*)(;|$)') ? document.cookie.match('(^|;) ?fullpagead=([^;]*)(;|$)')[2] : '';
268	//var rnd = Math.floor(Math.random() * 50);
269	////console.log('rnd: ' + rnd + ', fpa: ' + fpaCookie)
270	//if(fpaCookie != 1 && rnd >= 0 && document.location.href.indexOf("/teetime/") == -1) {
271	//	//console.log('Näytetään fullpagead...');
272	//	var fpa = document.createElement('script'); fpa.type = 'text/javascript';
273	//	fpa.src = 'https://as.otavamedia.fi/ad/golfpiste/?siteid=8&cb='+Math.floor((Math.random() * 9999999) + 1000000);
274	//	var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(fpa, s);
275	//}
276
277	var dfpDebug = false;
278	if (document.location.href.indexOf("dfpdebug=1") > -1 || dfpDebug) {
279		dfpDebug = true;
280	}
281
282	var useHBM = true;
283
284</script>
284
285
286<!-- !! ---- !! -->
287
288<script type='text/javascript' async>
289
290	var adLocation = 'content';
291
292	var googletag = googletag || {};
293	googletag.cmd = googletag.cmd || [];
294
295	waitForVariable('tcstring_decoded').then(function () {
296
297		if (dfpDebug) {
298			console.log('tcstring_decoded exists now...');
299			console.log('Decoded tcstring: ' + JSON.stringify(tcstring_decoded));
300		}
301
302		checkCMPConditions(tcstring_decoded, [1,3,4], [2,7,9,10], [], [755]).then(result => {
303			if (result) {
304				if (dfpDebug) {console.log("Consent met: GAM IS ALLOWED TO SERVE personalized ads...")}
305				//googletag.pubads().setTargeting("deliveryType", "normal");
306				deliveryType = 'normal';
307			} else {
308				checkCMPConditions(tcstring_decoded, [1], [2,7,9,10], [], [755]).then(result => {
309					if (result) {
310						if (dfpDebug) {console.log("Consent met: GAM IS ALLOWED TO SERVE Non-personalized ads...")}
311						//googletag.pubads().setTargeting("deliveryType", "npa");
312						deliveryType = 'npa';
313					} else {
314						checkCMPConditions(tcstring_decoded, [], [2,7,9,10], [], [755]).then(result => {
315							if (result) {
316								if (dfpDebug) {console.log("Consent met: GAM IS ALLOWED TO SERVE Limited ads...")}
317								//googletag.pubads().setTargeting("deliveryType", "lads");
318								deliveryType = 'lads';
319								useHBM = false;
320							} else {
321								if (dfpDebug) {console.log("Consent not met: GAM IS ALLOWED TO SERVE TAD...")}
322								//googletag.pubads().setTargeting("deliveryType", "tad");
323								deliveryType = 'tad';
324								useHBM = false;
325							}
326						});
327					}
328				});
329			}
330		});
331
332	});
333
334	// Async load of cx.js
335	(function(d,s,e,t){e=d.createElement(s);e.type='text/java'+s;e.async='async';
336	e.src='http'+('https:'===location.protocol?'s://s':'://')+'cdn.cxense.com/cx.js';
337	t=d.getElementsByTagName(s)[0];t.parentNode.insertBefore(e,t);})(document,'script');
338
339	var cxContextualIds = [], cxSegmentIds = [], LS_cxSegmentIds = '';
340	var cxSegmentIdsPlus = ['18hq77meo1fv5', '8o1l9ymij65d', '8n485ejzigi9', 'aakrx8vthy64', '8nqfato9a0es', 'aa9geil99h2i', '8nqi6elemih4', '8nfb8yhmklm1', '8nfainauefpl'];
341
342	if(typeof window.localStorage === 'object' && typeof window.localStorage.getItem === 'function') {
343		if (dfpDebug) {console.log('LS_cXsegmentIds: ' + localStorage.getItem("cxSegments"))}
344		//cxSegmentIds = localStorage.getItem("cxSegments") == '' ? '' : localStorage.getItem("cxSegments").split(',');
345		LS_cxSegmentIds = localStorage.getItem("cxSegments");
346		LS_cxSegmentIds = LS_cxSegmentIds === null || LS_cxSegmentIds === '' ? '' : LS_cxSegmentIds.split(',');
347		if (dfpDebug) {console.log('LS_cXsegmentIds arr length: ' + LS_cxSegmentIds.length + ', Array: ' + Array.isArray(LS_cxSegmentIds))}
348		LS_cxSegmentIds = [...LS_cxSegmentIds, ...cxSegmentIdsPlus];
349		if (dfpDebug) {console.log('Merged segmentIds: ' + LS_cxSegmentIds)}
350		let s = new Set(LS_cxSegmentIds);
351		LS_cxSegmentIds = [...s];
352	}
353
354	var cX = cX || { options: { tcf20: true } }; cX.callQueue = cX.callQueue || [];
355	if (dfpDebug) {console.log('cXsegmentIds1: ' + cxSegmentIds)}
356
357	checkCMPConditions(tcstring_decoded, [1,3,4], [], [412], []).then(result => {
358		if (result) {
359			if (dfpDebug) {console.log("Consents met: PIANO IS GOOD TO GO...")}
360			if (dfpDebug) {console.log("cX can load via tcstring...")}
361
362			var checkCxLoaded = setInterval(() => {
363				if (dfpDebug) {console.log("Checking if cX.loaded...")}
364				if (cX.loaded) {
365					clearInterval(checkCxLoaded);
366					if (dfpDebug) {console.log("cX is loaded!")}
367					cX.getSegments('f1ab28b7c9202ce3defa8bb2979a88f90c7a5ab2', function(segments) {
368						cX.Array.forEach(segments, function (cxTypedSegment, index) {
369							if (cxTypedSegment.type == 'contextual') {
370								cxContextualIds.push(cxTypedSegment.id);
371							} else if (cxTypedSegment.type == 'traffic') {
372								cxSegmentIds.push(cxTypedSegment.id);
373							}
374						});
375						let s = new Set(cxSegmentIdsPlus);
376						let s_cxContextualIds = [...s];
377						if (LS_cxSegmentIds == '') {googletag.pubads().setTargeting("CxSegments", s_cxContextualIds.join(','))}
378						if(typeof window.localStorage === 'object' && typeof window.localStorage.getItem === 'function') {
379							if (dfpDebug) {console.log("Saving cxSegmentIds: " + cxSegmentIds.join(","))}
380							localStorage.setItem("cxSegments", cxSegmentIds.join(","));
381						}
382						googletag.pubads().setTargeting("CxContext", cxContextualIds.join(','));
383					});
384				}
385			}, 20);
386		}
387	});
388
389</script>
389
390
391
392<!-- !! ---- !! -->
393
394<script type='text/javascript'>
395
396	window.gpAdSlots = {};
397
398	function updateSticky() {
399		if (typeof butWhereIsTheSticky !== "undefined") { butWhereIsTheSticky(); }
400	}
401
402	// GP oma logiikka/muuttuja
403	if( false ) {
404		var mobileAdLimit = 996;
405	} else {
406		var mobileAdLimit = 1450;
407	}
408
409	googletag.cmd.push(function() {
410
411		if( false ) {
412
413			var mapping1 = googletag.sizeMapping().
414				addSize([0, 0], []).
415				addSize([996, 200], [[980, 552],[980, 400],[980, 120]]). // Parade
416				build();
417			var mapping2 = googletag.sizeMapping().
418				addSize([0, 0], []).
419				addSize([996, 200], [[980, 552],[980, 400],[980, 120]]). // Panorama
420				build();
421			var mapping3 = googletag.sizeMapping().
422				addSize([0, 0], []).
423				addSize([996, 200], [[300,250],[300,300],[300, 600]]). // Rectangle
424				build();
425			var mapping4 = googletag.sizeMapping().
426				addSize([996, 200], []).
427				addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]]). // Mobiili
428				build();
429			var mapping5 = googletag.sizeMapping().
430				addSize([996, 200], []).
431				addSize([0, 0], [300, 600]). // Mobiilitakeover
432				build();
433			var mapping6 = googletag.sizeMapping().
434				addSize([996, 200], []).
435				addSize([0, 0], [300, 100]). // Mobiilitakeover - footer
436				build();
437			var mapping7 = googletag.sizeMapping().
438				addSize([576, 200], []).
439				addSize([0, 0], [500, 250]).
440				build();
441			var mapping8 = googletag.sizeMapping().
442				addSize([0, 0], []).
443				addSize([992, 0], [[300,250],[300,300],[300,431],[300, 600]]).
444				build();
445			var mapping9 = googletag.sizeMapping().
446				addSize([0, 0], [500, 250]).
447				build();
448
449		} else {
450
451			var mapping1 = googletag.sizeMapping().
452				addSize([0, 0], []).
453				addSize([1325, 200], [[980, 552],[980, 400],[980, 120]]). // Parade
454				build();
455			var mapping2 = googletag.sizeMapping().
456				addSize([0, 0], []).
457				addSize([1325, 200], [[980, 552],[980, 400],[980, 120]]). // Panorama
458				build();
459			var mapping3 = googletag.sizeMapping().
460				addSize([0, 0], []).
461				addSize([1325, 200], [[300,250],[300,300],[300, 600]]). // Rectangle
462				build();
463			var mapping4 = googletag.sizeMapping().
464				addSize([1325, 200], []).
465				addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]]). // Mobiili
466				build();
467			var mapping5 = googletag.sizeMapping().
468				addSize([1325, 200], []).
469				addSize([0, 0], [300, 600]). // Mobiilitakeover
470				build();
471			var mapping6 = googletag.sizeMapping().
472				addSize([996, 200], []).
473				addSize([0, 0], [300, 100]). // Mobiilitakeover - footer
474				build();
475			var mapping7 = googletag.sizeMapping().
476				addSize([576, 200], []).
477				addSize([0, 0], [500, 250]).
478				build();
479			var mapping8 = googletag.sizeMapping().
480				addSize([0, 0], []).
481				addSize([992, 200], [[300,250],[300,300],[300,431],[300, 600]]).
482				build();
483			var mapping9 = googletag.sizeMapping().
484				addSize([0, 0], [500, 250]).
485				build();
486
487		}
488
489		//if( 'content' === 'frontpage' ) {
490		if( ['frontpage', 'content'].includes('content') ) {
491			googletag.defineSlot('/135812570/golfpiste/native/native-card-1', [[1, 1], ['fluid']], 'gp-native-1').addService(googletag.pubads());
492		}
493 if('content' === 'golfcourses'){
494                    // googletag.defineSlot('/135812570/golfpiste/golfcourses/mob-1', [[320, 320]], 'golfcourses-div-mob-1').defineSizeMapping(googletag.sizeMapping().addSize([0, 0], [320, 320]).build()).addService(googletag.pubads());
495         // DESKTOP-slotit (980x400)
496googletag.defineSlot(
497    '/135812570/golfpiste/golfcourses/desk-1',
498    [[980, 400], [980, 552]],
499    'golfcourses-div-desk-1'
500).defineSizeMapping(
501    googletag.sizeMapping()
502        .addSize([980, 0], [[980, 400], [980, 552]]) // näkyy vain isolla näytöllä
503        .addSize([0, 0], [])           // ei mitään pienemmillä
504        .build()
505).addService(googletag.pubads());
506
507googletag.defineSlot(
508    '/135812570/golfpiste/golfcourses/desk-2',
509    [[980, 400], [980, 552]],
510    'golfcourses-div-desk-2'
511).defineSizeMapping(
512    googletag.sizeMapping()
513        .addSize([980, 0], [[980, 400], [980, 552]])
514        .addSize([0, 0], [])
515        .build()
516).addService(googletag.pubads());
517
518
519// MOBIILI-slotit (320x431)
520googletag.defineSlot(
521    '/135812570/golfpiste/golfcourses/mob-1',
522    [[300,250],[300,300],[300,431],[300, 600],[320, 320]],
523    'golfcourses-div-mob-1'
524).defineSizeMapping(
525    googletag.sizeMapping()
526        .addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]])  // pienillä näytöillä
527        .addSize([768, 0], [])        // piilotetaan isommilla (tai anna CSS:n hoitaa)
528        .build()
529).addService(googletag.pubads());
530
531googletag.defineSlot(
532    '/135812570/golfpiste/golfcourses/mob-2',
533    [[300,250],[300,300],[300,431],[300, 600],[320, 320]],
534    'golfcourses-div-mob-2'
535).defineSizeMapping(
536    googletag.sizeMapping()
537        .addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]])
538        .addSize([768, 0], [])
539        .build()
540).addService(googletag.pubads());
541
542                }
543 if('content' === 'golfcoursessearch'){
544            //         googletag.defineSlot('/135812570/golfpiste/golfcourses/mob-1', [[320, 320]], 'golfcourses-div-mob-1').defineSizeMapping(googletag.sizeMapping().addSize([0, 0], [320, 320]).build()).addService(googletag.pubads());
545googletag.defineSlot(
546    '/135812570/golfpiste/golfcourses/mob-1',
547    [[300,250],[300,300],[300,431],[300, 600],[320, 320]],
548    'golfcourses-div-mob-1'
549).defineSizeMapping(
550    googletag.sizeMapping()
551        .addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]])
552        .build()
553).addService(googletag.pubads());
554
555         googletag.defineSlot(
556    '/135812570/golfpiste/golfcourses/mob-2',
557    [[300,250],[300,300],[300,431],[300, 600],[320, 320]],
558    'golfcourses-div-mob-2'
559).defineSizeMapping(
560    googletag.sizeMapping()
561        .addSize([0, 0], [[300,250],[300,300],[300,431],[300, 600],[320, 320]])
562        .build()
563).addService(googletag.pubads());
564                }
565
566		if( ['frontpage', 'blogs', 'forum-alasivut', 'stock-market', 'content', 'weather'].includes('content') ) {
567			const nativeCardsToRender = 2;
568			for (let i = 1; i <= nativeCardsToRender; i++) {
569				googletag.defineSlot('/135812570/golfpiste/native/native-card-2', [[1, 1], ['fluid']], 'gp-native-2_' + i).addService(googletag.pubads());
570			}
571		}
572
573		if( '' === 'hotlist' ) {
574			googletag.defineSlot('/135812570/golfpiste/hotlist/desk', [[980, 552],[980, 400],[980, 120]], 'div-desk-1').defineSizeMapping(mapping1).addService(googletag.pubads());
575			googletag.defineSlot('/135812570/golfpiste/content/desk-1', [[980, 552],[980, 400],[980, 120]], 'div-desk-2').defineSizeMapping(mapping1).addService(googletag.pubads());
576		} else if( '' === 'teetime' ) {
577			googletag.defineSlot('/135812570/golfpiste/teetime/desk-1', [[980, 552],[980, 400],[980, 120]], 'div-teetime-desk')
578				.defineSizeMapping(mapping1)
579				.addService(googletag.pubads());
580			googletag.defineSlot('/135812570/golfpiste/teetime/rect-1', [[300,250],[300,300],[300, 600]], 'div-teetime-rect')
581				.defineSizeMapping(mapping8)
582				.addService(googletag.pubads());
583			googletag.defineSlot('/135812570/golfpiste/teetime/mob-1', [[500, 250]], 'div-teetime-mob')
584				.defineSizeMapping(mapping7)
585				.addService(googletag.pubads());
586			googletag.defineSlot('/135812570/golfpiste/teetime/popup', [[500, 250]], 'div-teetime-popup')
587				.defineSizeMapping(mapping9)
588				.addService(googletag.pubads());
589		} else {
590			if (!location.href.includes('?testnewadsetup')) {
591				googletag.defineSlot('/135812570/golfpiste/content/desk-1', [[980, 552],[980, 400],[980, 120]], 'div-desk-1').defineSizeMapping(mapping1).addService(googletag.pubads());
592			}
593			window.gpAdSlots['div-desk-2'] = googletag.defineSlot('/135812570/golfpiste/content/desk-2', [[980, 552],[980, 400],[980, 120]], 'div-desk-2').defineSizeMapping(mapping2).addService(googletag.pubads());
594			window.gpAdSlots['div-desk-3'] =googletag.defineSlot('/135812570/golfpiste/content/desk-3', [[980, 552],[980, 400],[980, 120]], 'div-desk-3').defineSizeMapping(mapping2).addService(googletag.pubads());
595		}
596
597		googletag.defineSlot('/135812570/golfpiste/content/rectangle-1', [[300,250],[300,300],[300,431],[300, 600]], 'div-rectangle-1').defineSizeMapping(mapping3).addService(googletag.pubads());
598		googletag.defineSlot('/135812570/golfpiste/content/rectangle-2', [[300,250],[300,300],[300,431],[300, 600]], 'div-rectangle-2').defineSizeMapping(mapping3).addService(googletag.pubads());
599
600		if( '' === 'hotlist' ) {
601			googletag.defineSlot('/135812570/golfpiste/hotlist/mob', [[300,250],[300,300],[300,431],[300, 600]], 'div-mob-1').defineSizeMapping(mapping4).addService(googletag.pubads());
602			googletag.defineSlot('/135812570/golfpiste/content/mob-1', [[300,250],[300,300],[300,431],[300, 600]], 'div-mob-2').defineSizeMapping(mapping4).addService(googletag.pubads());
603			googletag.defineSlot('/135812570/golfpiste/content/mob-2', [[300,250],[300,300],[300,431],[300, 600]], 'div-mob-3').defineSizeMapping(mapping4).addService(googletag.pubads());
604		}
605                else if( '' === 'teetime' ) {
606
607		} else {
608			window.gpAdSlots['div-mob-1'] = googletag.defineSlot('/135812570/golfpiste/content/mob-1', [[300,250],[300,300],[300,431],[300, 600]], 'div-mob-1').defineSizeMapping(mapping4).addService(googletag.pubads());
609			window.gpAdSlots['div-mob-2'] = googletag.defineSlot('/135812570/golfpiste/content/mob-2', [[300,250],[300,300],[300,431],[300, 600],[320, 320]], 'div-mob-2').defineSizeMapping(mapping4).addService(googletag.pubads());
610			window.gpAdSlots['div-mob-3'] = googletag.defineSlot('/135812570/golfpiste/content/mob-3', [[300,250],[300,300],[300,431],[300, 600]], 'div-mob-3').defineSizeMapping(mapping4).addService(googletag.pubads());
611		}
612
613		// PHP LOGIIKKA LOPPUU
614
615		googletag.pubads().addEventListener('slotRequested', function(e) {
616			updateSticky();
617			console.log('SLOT HAS BEEN REQUESTED: ', e.slot.getSlotElementId() );
618			window.postMessage({'load':false,'slot':e.slot.getSlotElementId()});
619		});
620
621		googletag.pubads().addEventListener('slotRenderEnded', function(e) {
622			if (!e.isEmpty) {
623				window.postMessage({'load':true,'slot':e.slot.getSlotElementId()});
624			} else {
625				window.postMessage({'load':false,'slot':e.slot.getSlotElementId()});
626			}
627			updateSticky();
628		});
629
630		googletag.pubads().addEventListener('impressionViewable', function(e) {
631			if (!e.isEmpty) {
632				var adname = e.slot.getSlotElementId();
633				//console.log('MC: Slot impressionViewable: '+e.slot.getSlotElementId());
634				var adh;
635				adh = document.getElementById(e.slot.getSlotElementId()).offsetHeight;
636				//console.log('MC: Slot height: ' + adh + "px");
637				document.getElementById('ad-wrapper-'+adname).style.minHeight = adh+'px';
638				document.getElementById('ad-wrapper-'+adname).style.backgroundImage = '';
639			} else {
640				console.log('MC: Slot impression error: '+e.slot.getSlotElementId());
641			}
642			updateSticky();
643		});
644
645		googletag.pubads().addEventListener('slotRenderEnded', function(event) {
646
647			if (event.slot.getSlotElementId().indexOf('div-desk-1') > -1) {
648				if (event.isEmpty) {
649					jQuery('#' + event.slot.getSlotElementId()).closest('section.section--ad').remove();
650				}
651			}
652
653			if (event.slot.getSlotElementId().indexOf('dfp__interstitial') > -1) {
654				if (event.isEmpty) {
655					if (dfpDebug) {console.log('Fpa is empty, calling webinterstitial...')}
656					window.canRunWebInterstitial = true;
657				} else {
658					//if (dfpDebug) {console.log('BBW: preventing sticky player when fpa was shown...')}
659					//window.bluebillywig = window.bluebillywig || {};
660					//window.bluebillywig.cmd = window.bluebillywig.cmd || [];
661					////window.bluebillywig.cmd.push(function($$api) {
662					////	//const originalStickyMode = $$api.getPlayoutData().stickyMode;
663					////	$$api.updatePlayout({stickyMode: 'none'});
664					////	//$$api.updatePlayout({stickyMode: originalStickyMode});
665					////});
666					//window.bluebillywig.cmd.push({
667					//	playerId: '/p/inarticle/a/golfpiste',
668					//	callback: function($$api) {
669					//		$$api.updatePlayout({stickyMode: 'none'});
670					//	}
671					//});
672				}
673			}
674
675			if ((dfpDebug && 1 == 2) || location.href.indexOf('hidenative=1') >= -1) {
676
677				const origAdSlotId = event.slot.getSlotElementId();
678				if (dfpDebug) {console.log('NATIVE: Checking slot replace for rp: ' + origAdSlotId)}
679
680				//const acceptedSlotIds = ['mob-', 'desk-', 'rectangle-', 'gp-native-2'];
681				const acceptedSlotIds = ['mob-', 'rectangle-', 'gp-native-'];
682				if (!acceptedSlotIds.some(id => origAdSlotId.includes(id))) return;
683				if (!event.isEmpty) return;
684
685				if (dfpDebug) {console.log('NATIVE: Replacing "' + origAdSlotId + '" with rp...')}
686				if (origAdSlotId.includes('dfp__mob-')) {
687					loadReadpeakAd(origAdSlotId, '#' + origAdSlotId, 'append', jQuery('#' + origAdSlotId));
688				} else {
689					loadReadpeakAd(origAdSlotId, '#' + origAdSlotId, 'replaceWith');
690				}
691
692			}
693
694		});
695
696		(function () {
697
698			function generateNewPPID() {
699				return crypto.randomUUID().replace(/-/g, '');
700			}
701
702			function parsePossiblyDoubleEncodedJSON(value) {
703				var parsed = value;
704				while (typeof parsed === 'string') {
705					parsed = JSON.parse(parsed);
706				}
707				return parsed;
708			}
709
710			function setPPID(ppid) {
711				if (!ppid) return;
712				localStorage.setItem('ppid', ppid);
713				googletag.pubads().setPublisherProvidedId(ppid);
714			}
715
716			var storedPPID = localStorage.getItem('ppid');
717
718			if (storedPPID) {
719				console.log('ls storedPPID: ', storedPPID);
720				googletag.pubads().setPublisherProvidedId(storedPPID);
721				return;
722			}
723
724			try {
725				var gravitoValue = localStorage.getItem('gravito-microprofile-data');
726				if (gravitoValue) {
727					var parsed = parsePossiblyDoubleEncodedJSON(gravitoValue);
728					if (parsed && parsed.i) {
729						var migratedPPID = btoa(parsed.i);
730						console.log('gmd ls migratedPPID: ', migratedPPID);
731						setPPID(migratedPPID);
732						return;
733					}
734				}
735			} catch (e) {
736				console.warn('Gravito migration failed:', e);
737			}
738
739			var newPPID = generateNewPPID();
740			setPPID(newPPID);
741			if (dfpDebug) {console.log('created a newPPID: ', newPPID)}
742
743		})();
744
745		//waitForResource('localStorage', 'gravito-microprofile-data').then(function (value) {
746		//	if (dfpDebug) {console.log('gravito-microprofile-data exists in local storage with value: ', value)}
747		//	var ppid = btoa(JSON.parse(JSON.parse(value)).i);
748		//	if (ppid) {
749		//		googletag.pubads().setPublisherProvidedId(ppid);
750		//		if (dfpDebug) {console.log('ppid: ' + ppid)}
751		//	}
752		//});
753
754		var renderMarginPercent = Math.random() < 1/3 ? 20 : Math.random() < 1/2 ? 40 : 60;
755		googletag.pubads().setTargeting("experiments", "lazyload_" + renderMarginPercent);
756		googletag.pubads().enableLazyLoad({
757			fetchMarginPercent: 100,
758			renderMarginPercent: renderMarginPercent,
759			mobileScaling: 1
760		});
761		if (dfpDebug) {console.log('renderMarginPercent: ' + renderMarginPercent)}
762
763		googletag.pubads().enableSingleRequest();
764		googletag.pubads().collapseEmptyDivs(true);
765
766		// Adding some targeting parameters for adOps
767		googletag.pubads().setTargeting('url_domain', window.location.host)
768		googletag.pubads().setTargeting('url_path', window.location.pathname)
769		googletag.pubads().setTargeting('url_params', window.location.search.substring(1));
770
771
772		if (LS_cxSegmentIds != '') {googletag.pubads().setTargeting("CxSegments", LS_cxSegmentIds)}
773
774		window.relevantDigital = window.relevantDigital || {};
775		relevantDigital.cmd = relevantDigital.cmd || [];
776
777		if (!location.href.match(/\/plus-info\/|\/tilaa-jasenyys\/|\/jasenyys-ota-yhteytta\/|\/jasenyys-saannot\/|\/plus\//)) {
778
779			waitForVariable('deliveryType').then(function () {
780
781				if( window.innerWidth >= 992 ) {
782					//console.log("Loading Desktop Relevant Configuration...");
783					// Desktop
784					relevantDigital.cmd.push(function() {
785						relevantDigital.loadPrebid({
786							configId: '61b068fbfd2e6f8e4e045967',
787							manageAdserver: true,
788							collapseEmptyDivs: true,
789							collapseBeforeAdFetch: false,
790							noGpt: true,
791							allowedDivIds: null, // set to an array to only load certain <div>s, example - ["divId1", "divId2"]
792							noSlotReload: false, // set true to only load ad slots that have never been loaded
793						});
794					});
795				} else {
796					// Mobile
797					//console.log("Loading Mobile Relevant Configuration...");
798					relevantDigital.cmd.push(function() {
799						relevantDigital.loadPrebid({
800							configId: '61b06bc034df124612045968',
801							manageAdserver: true,
802							collapseEmptyDivs: true,
803							collapseBeforeAdFetch: false,
804							noGpt: true,
805							allowedDivIds: null, // set to an array to only load certain <div>s, example - ["divId1", "divId2"]
806							noSlotReload: false, // set true to only load ad slots that have never been loaded
807						});
808					});
809				}
810
811				googletag.pubads().setTargeting("deliveryType", deliveryType);
812				console.timeEnd("B");
813				console.log('Time end: B');
814
815				googletag.pubads().disableInitialLoad();
816				googletag.enableServices();
817
818			});
819			if (dfpDebug) {console.log('Poistetaan mainokset Golfpiste plussasta...')}
820		}
821
822		console.timeEnd("A");
823
824	});
825
826
827	if (useAdvantage && window.innerWidth < 997) {
828		// Advantage package
829		(async () => {
830			try {
831
832				const module = await import("https://cdn.jsdelivr.net/npm/@get-advantage/advantage/+esm");
833				const utils = await import("https://cdn.jsdelivr.net/npm/@get-advantage/advantage/utils/+esm");
834
835				const { Advantage, AdvantageFormatName } = module;
836				const { advantageWrapAdSlotElement } = utils;
837
838				const advantage = Advantage.getInstance();
839				advantage.configure({
840					formatIntegrations: [
841						{
842							format: AdvantageFormatName.Midscroll,
843							setup: (wrapper, ad) => {
844								return ((resolve) => {
845									resolve();
846								});
847							},
848							reset(wrapper, ad) {
849							}
850						},
851						{
852							format: AdvantageFormatName.DoubleMidscroll,
853							setup: (wrapper, ad) => {
854								return ((resolve) => {
855									resolve();
856								});
857							},
858							reset(wrapper, adIframe) {
859
860							},
861						},
862					]
863				});
864				console.log("Advantage activated...");
865			} catch (error) {
866				console.error("An error occurred while loading the Advantage package: ", error);
867			}
868
869		})();
870	}
871
872</script>
872
873
874<meta name="facebook-domain-verification" content="jum1r7c4rznj7tl7r44wwtgd9g9ddd" />
875
876<!-- // golfpiste.com -->
877
878<!-- Head tag end, do not remove -->
879    <!-- Kirjautumisjärjestelmä alkaa -->
880
881    <meta name="google-signin-client_id" content="658666527239-rgugmrrabm9clfkm6tplh3ottukfngme.apps.googleusercontent.com">
882	
883    <!-- Kirjautumisjärjestelmä loppuu -->
884
885
886<!-- Google Tag Manager -->
887<script>
vendor: 327 bytes, lines 887-891
887(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
888new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
889j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
890'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
891})(window,document,'script','dataLayer','
891GTM-M6VDH4
vendor: 3 bytes, line 891
891');
891</script>
891
892<!-- End Google Tag Manager -->
893
894<!-- Meta Pixel Code -->
895<script>
vendor: 399 bytes, lines 895-904
895
896!function(f,b,e,v,n,t,s)
897{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
898n.callMethod.apply(n,arguments):n.queue.push(arguments)};
899if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
900n.queue=[];t=b.createElement(e);t.async=!0;
901t.src=v;s=b.getElementsByTagName(e)[0];
902s.parentNode.insertBefore(t,s)}(window, document,'script',
903'https://connect.facebook.net/en_US/fbevents.js');
904fbq('init', '
904936032894999454
vendor: 30 bytes, lines 904-905
904');
905fbq('track', 'PageView');
906</script>
906
907<noscript><img height="1" width="1" style="display:none"
908src=https://www.facebook.com/tr?id=936032894999454&ev=PageView&noscript=1
909/></noscript>
910<!-- End Meta Pixel Code -->
911
912
913<script type='text/javascript'>
914	var scrollToLivescoring = false;
915	/* nämä pitää tulla mainostenhallinnasta */
916	var takeOverId = "verkkokauppa";
917	var takeoverDesktop = false;
918	var takeoverMobile = false; 	var takeoverMobileClosedEnabled = true;
919	var takeoverMobileClosed = false;
920	var takeoverMobileCountLimit = 10;
921	var takeoverMobileTimeLimit = 120;
922
923	
924	isIosTablet2020 = false;
925
926	const Prio1Detect=class{constructor(){this.t=window.navigator.userAgent.toLowerCase(),this.h=navigator.maxTouchPoints,this.o=this.h>0,this.c=this.t.indexOf("ipad")>-1||this.t.indexOf("macintosh")>-1&&"ontouchend"in document,this.e=this.t.indexOf("macintosh")>-1&&!this.c,this.a=this.t.indexOf("iphone")>-1,this.o||(this.h=0)}dev(){return this.c?"iPad":this.a?"iPhone":!!this.e&&"iMac"}mt(){return this.o}};
927
928	p1detect = new Prio1Detect();
929
930	if( p1detect.c )
931		isIosTablet2020 = true;
932
933</script>
933
934
935<script> var takeoverIsPossible = false; </script>
935    <meta charset="UTF-8" />
936    <meta http-equiv="x-ua-compatible" content="IE=edge" />
937<meta id="extViewportMeta" name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=2.0, minimum-scale=1.0">	<meta name="apple-mobile-web-app-capable" content="yes">
938	<meta name="apple-touch-fullscreen" content="yes">
939	<meta name="google-site-verification" content="mS6U43zm5IYJCxmdIZ0o6LMjPUjuZx3otELJq4tkqcQ" />
940	<meta name="format-detection" content="telephone=no">
941
942    
943	<link rel="shortcut icon" href="/wp-content/themes/golfpiste/assets/img/favicon.ico">
944	<link rel="apple-touch-icon" href="/wp-content/themes/golfpiste/assets/img/golfpiste-merkki.png">
945
946	<title>
947	  Tietoa Golfpiste Plussasta - Golfpiste.com	</title>
948
949
950	<link rel="stylesheet" href="https://golfpiste.com/wp-content/themes/golfpiste/style.css?ver=14"/>
951	<link rel="stylesheet" href="/wp-content/themes/golfpiste/css/all.css?ver=2.2">
952<link rel="stylesheet" href="https://golfpiste.com/wp-content/themes/golfpiste/css/single.css?ver=4"/>
952<script> var hasSubnav = true; </script>
952<script> var hasSearchMobileButton = false; </script>
952<link rel="stylesheet" href="https://golfpiste.com/wp-content/themes/golfpiste/css/erikoisartikkeli.css?ver=94.9"/>	
952<script>window.FontAwesomeConfig = {searchPseudoElements: true}</script>
952
953
954	
954<script>
955var sticky = false;
956var stickyBottomFix = -30;
957		var elemCount = 0;
958
959		if(isIosTablet2020)
960			sticky = false;
961	</script>
961
962<meta name='robots' content='max-image-preview:large' />
963<script type="text/javascript">
964/* <![CDATA[ */
965window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/golfpiste.com\/wp-includes\/js\/wp-emoji-release.min.js?ver=9396a1ae20f2154198ba137e3f007bcb"}};
966/*! This file is auto-generated */
967!function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200b\ud83e\udef2\ud83c\udfff")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
968/* ]]> */
969</script>
969
970<style id='wp-emoji-styles-inline-css' type='text/css'>
971
972	img.wp-smiley, img.emoji {
973		display: inline !important;
974		border: none !important;
975		box-shadow: none !important;
976		height: 1em !important;
977		width: 1em !important;
978		margin: 0 0.07em !important;
979		vertical-align: -0.1em !important;
980		background: none !important;
981		padding: 0 !important;
982	}
983</style>
984<link rel='stylesheet' id='bbp-default-css' href='https://golfpiste.com/wp-content/plugins/bbpress/templates/default/css/bbpress.min.css?ver=2.6.9' type='text/css' media='all' />
985<link rel='stylesheet' id='special-element-styles-css' href='https://golfpiste.com/wp-content/plugins/e-book-special-elements//css/special-element-styles.css?ver=1709732798' type='text/css' media='all' />
986<link rel='stylesheet' id='woocommerce-layout-css' href='https://golfpiste.com/wp-content/plugins/woocommerce/assets/css/woocommerce-layout.css?ver=8.4.3' type='text/css' media='all' />
987<link rel='stylesheet' id='woocommerce-smallscreen-css' href='https://golfpiste.com/wp-content/plugins/woocommerce/assets/css/woocommerce-smallscreen.css?ver=8.4.3' type='text/css' media='only screen and (max-width: 768px)' />
988<link rel='stylesheet' id='woocommerce-general-css' href='https://golfpiste.com/wp-content/plugins/woocommerce/assets/css/woocommerce.css?ver=8.4.3' type='text/css' media='all' />
989<style id='woocommerce-inline-inline-css' type='text/css'>
990.woocommerce form .form-row .required { visibility: visible; }
991</style>
992<link rel='stylesheet' id='ppress-frontend-css' href='https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/css/frontend.min.css?ver=4.14.2' type='text/css' media='all' />
993<link rel='stylesheet' id='ppress-flatpickr-css' href='https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/flatpickr/flatpickr.min.css?ver=4.14.2' type='text/css' media='all' />
994<link rel='stylesheet' id='ppress-select2-css' href='https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/select2/select2.min.css?ver=9396a1ae20f2154198ba137e3f007bcb' type='text/css' media='all' />
995<link rel='stylesheet' id='tablepress-default-css' href='https://golfpiste.com/wp-content/tablepress-combined.min.css?ver=4' type='text/css' media='all' />
996<link rel='stylesheet' id='select2-css' href='https://golfpiste.com/wp-content/plugins/woocommerce/assets/css/select2.css?ver=8.4.3' type='text/css' media='all' />
997<script type="text/javascript" src="https://golfpiste.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
vendor: 1 bytes, line 997
997
998<script type="text/javascript" src="https://golfpiste.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
vendor: 1 bytes, line 998
998
999<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/woocommerce/assets/js/jquery-blockui/jquery.blockUI.min.js?ver=2.7.0-wc.8.4.3" id="jquery-blockui-js" defer="defer" data-wp-strategy="defer"></script>
vendor: 1 bytes, line 999
999
1000<script type="text/javascript" id="wc-add-to-cart-js-extra">
1001/* <![CDATA[ */
1002var wc_add_to_cart_params = {"ajax_url":"\/wp-admin\/admin-ajax.php","wc_ajax_url":"\/?wc-ajax=%%endpoint%%","i18n_view_cart":"N\u00e4yt\u00e4 ostoskori","cart_url":"https:\/\/golfpiste.com\/jasenyys-ostoskori\/","is_cart":"","cart_redirect_after_add":"no"};
1003/* ]]> */
1004</script>
vendor: 1 bytes, line 1004
1004
1005<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/woocommerce/assets/js/frontend/add-to-cart.min.js?ver=8.4.3" id="wc-add-to-cart-js" defer="defer" data-wp-strategy="defer"></script>
vendor: 1 bytes, line 1005
1005
1006<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/woocommerce/assets/js/js-cookie/js.cookie.min.js?ver=2.1.4-wc.8.4.3" id="js-cookie-js" defer="defer" data-wp-strategy="defer"></script>
vendor: 1 bytes, line 1006
1006
1007<script type="text/javascript" id="woocommerce-js-extra">
1008/* <![CDATA[ */
1009var woocommerce_params = {"ajax_url":"\/wp-admin\/admin-ajax.php","wc_ajax_url":"\/?wc-ajax=%%endpoint%%"};
1010/* ]]> */
1011</script>
vendor: 1 bytes, line 1011
1011
1012<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/woocommerce/assets/js/frontend/woocommerce.min.js?ver=8.4.3" id="woocommerce-js" defer="defer" data-wp-strategy="defer"></script>
vendor: 1 bytes, line 1012
1012
1013<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/flatpickr/flatpickr.min.js?ver=4.14.2" id="ppress-flatpickr-js"></script>
vendor: 1 bytes, line 1013
1013
1014<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/select2/select2.min.js?ver=4.14.2" id="ppress-select2-js"></script>
vendor: 1 bytes, line 1014
1014
1015<script type="text/javascript" src="https://golfpiste.com/wp-content/themes/golfpiste/assets/js/not-app-script.js?ver=9396a1ae20f2154198ba137e3f007bcb" id="not-app-script-js"></script>
vendor: 1 bytes, line 1015
1015
1016<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/woocommerce/assets/js/selectWoo/selectWoo.full.min.js?ver=1.0.9-wc.8.4.3" id="selectWoo-js" defer="defer" data-wp-strategy="defer"></script>
1016
1017<link rel="https://api.w.org/" href="https://golfpiste.com/wp-json/" /><link rel="alternate" type="application/json" href="https://golfpiste.com/wp-json/wp/v2/pages/1426612" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://golfpiste.com/xmlrpc.php?rsd" />
1018
1019<link rel="canonical" href="https://golfpiste.com/plus-info/" />
1020<link rel='shortlink' href='https://golfpiste.com/?p=1426612' />
1021<link rel="alternate" type="application/json+oembed" href="https://golfpiste.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fgolfpiste.com%2Fplus-info%2F" />
1022<link rel="alternate" type="text/xml+oembed" href="https://golfpiste.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fgolfpiste.com%2Fplus-info%2F&#038;format=xml" />
1023<style type="text/css" id="tve_global_variables">:root{--tcb-background-author-image:url(https://secure.gravatar.com/avatar/ec5e1d693c98a292cdae8fcfd222a5e6?s=256&d=mm&r=g);--tcb-background-user-image:url();--tcb-background-featured-image-thumbnail:url(https://golfpiste.com/wp-content/plugins/thrive-quiz-builder/tcb/editor/css/images/featured_image.png);}</style>	<noscript><style>.woocommerce-product-gallery{ opacity: 1 !important; }</style></noscript>
1024	<meta name="generator" content="Powered by Slider Revolution 6.6.20 - responsive, Mobile-Friendly Slider Plugin for WordPress with comfortable drag and drop interface." />
1025<style type="text/css" id="thrive-default-styles"></style>
1025<script>function setREVStartSize(e){
1026			//window.requestAnimationFrame(function() {
1027				window.RSIW = window.RSIW===undefined ? window.innerWidth : window.RSIW;
1028				window.RSIH = window.RSIH===undefined ? window.innerHeight : window.RSIH;
1029				try {
1030					var pw = document.getElementById(e.c).parentNode.offsetWidth,
1031						newh;
1032					pw = pw===0 || isNaN(pw) || (e.l=="fullwidth" || e.layout=="fullwidth") ? window.RSIW : pw;
1033					e.tabw = e.tabw===undefined ? 0 : parseInt(e.tabw);
1034					e.thumbw = e.thumbw===undefined ? 0 : parseInt(e.thumbw);
1035					e.tabh = e.tabh===undefined ? 0 : parseInt(e.tabh);
1036					e.thumbh = e.thumbh===undefined ? 0 : parseInt(e.thumbh);
1037					e.tabhide = e.tabhide===undefined ? 0 : parseInt(e.tabhide);
1038					e.thumbhide = e.thumbhide===undefined ? 0 : parseInt(e.thumbhide);
1039					e.mh = e.mh===undefined || e.mh=="" || e.mh==="auto" ? 0 : parseInt(e.mh,0);
1040					if(e.layout==="fullscreen" || e.l==="fullscreen")
1041						newh = Math.max(e.mh,window.RSIH);
1042					else{
1043						e.gw = Array.isArray(e.gw) ? e.gw : [e.gw];
1044						for (var i in e.rl) if (e.gw[i]===undefined || e.gw[i]===0) e.gw[i] = e.gw[i-1];
1045						e.gh = e.el===undefined || e.el==="" || (Array.isArray(e.el) && e.el.length==0)? e.gh : e.el;
1046						e.gh = Array.isArray(e.gh) ? e.gh : [e.gh];
1047						for (var i in e.rl) if (e.gh[i]===undefined || e.gh[i]===0) e.gh[i] = e.gh[i-1];
1048											
1049						var nl = new Array(e.rl.length),
1050							ix = 0,
1051							sl;
1052						e.tabw = e.tabhide>=pw ? 0 : e.tabw;
1053						e.thumbw = e.thumbhide>=pw ? 0 : e.thumbw;
1054						e.tabh = e.tabhide>=pw ? 0 : e.tabh;
1055						e.thumbh = e.thumbhide>=pw ? 0 : e.thumbh;
1056						for (var i in e.rl) nl[i] = e.rl[i]<window.RSIW ? 0 : e.rl[i];
1057						sl = nl[0];
1058						for (var i in nl) if (sl>nl[i] && nl[i]>0) { sl = nl[i]; ix=i;}
1059						var m = pw>(e.gw[ix]+e.tabw+e.thumbw) ? 1 : (pw-(e.tabw+e.thumbw)) / (e.gw[ix]);
1060						newh =  (e.gh[ix] * m) + (e.tabh + e.thumbh);
1061					}
1062					var el = document.getElementById(e.c);
1063					if (el!==null && el) el.style.height = newh+"px";
1064					el = document.getElementById(e.c+"_wrapper");
1065					if (el!==null && el) {
1066						el.style.height = newh+"px";
1067						el.style.display = "block";
1068					}
1069				} catch(e){
1070					console.log("Failure at Presize of Slider:" + e)
1071				}
1072			//});
1073		  };</script>
1073
1074
1075    <style>
1076
1077        .omat-tiedot-hover--content {
1078            position: fixed;
1079            width: 140px;
1080            padding: 10px;
1081            background: white;
1082            border-radius: 5px;
1083            box-shadow: 0px 0px 10px rgba(167,167,167,.3);
1084            transition: opacity .2s ease-in-out;
1085            display: none;
1086            z-index: 99999;
1087            top: 50px;
1088        }
1089
1090        /*.omat-tiedot-hover--content::before {
1091            content: "";
1092            position: absolute;
1093            width: 100px;
1094            height: 30px;
1095            top: -30px;
1096            right: 0;
1097        }*/
1098
1099        .omat-tiedot-hover {
1100            height: 35px;
1101        }
1102
1103        .omat-tiedot-hover:hover ~ .omat-tiedot-hover-content {
1104            display: block;
1105        }
1106
1107        .omat-tiedot-hover--content.hover-content--active{
1108            display: block;
1109        }
1110
1111        .omat-tiedot-hover--content a {
1112            text-decoration: none;
1113        }
1114
1115        .omat-tiedot-hover--content span {
1116            display: block;
1117        }
1118
1119        @media (max-width: 996px) {
1120            .omat-tiedot-hover--content {
1121                width: 50%;
1122                right: 10px!important;
1123                top: 42px;
1124            }
1125
1126            .omat-tiedot-hover--content button,
1127            .omat-tiedot-hover--content a span{
1128                font-size: 16px!important;
1129            }
1130        }
1131
1132        .omat-tiedot-hover--content form {
1133            width: 100%;
1134        }
1135
1136        .omat-tiedot-hover--content button:hover,
1137        .omat-tiedot-hover--content a:hover span{
1138            color: #F5A623;
1139        }
1140
1141        .omat-tiedot-hover--content a{
1142            color: black!important;
1143            text-transform: uppercase;
1144            font-family: "barlowregular";
1145            margin-top: 5px;
1146            display: block;
1147        }
1148
1149        .omat-tiedot-hover--content button {
1150            -webkit-appearance: none;
1151            appearance: none;
1152            border: 0px;
1153            background: rgba(0,0,0,0);
1154            color: #000;
1155            text-transform: uppercase;
1156            font-family: "barlowmedium";
1157            padding: 0px;
1158            display: flex;
1159            width: 100%;
1160            margin-top: 15px;
1161            cursor: pointer;
1162            top: 35px;
1163            font-size: 13px;
1164            justify-content: space-between;
1165        }
1166
1167        #omat-tiedot-hoverable-parent:hover + .omat-tiedot-hover--content{
1168            display: block;
1169        }
1170    </style>
1171
1172    
1172<script>
1173
1174        (function($) {
1175
1176                        let userHasAdminBar = false;
1177            
1178                        let isUserLoggedIn = false;
1179            
1180            $(document).ready(function() {
1181
1182                if(userHasAdminBar) {
1183                    $(".omat-tiedot-hover--content").css("top", "80px");
1184                }
1185
1186                if(isUserLoggedIn) {
1187                    let itemToPosition = $(".omat-tiedot-hover--content");
1188                    let itemToGetCoordinates = $(".omat-tiedot-hover");
1189
1190                    let omatTiedotDropwdowEvent = $("body").click(function(e) {
1191                        if( $(e.target).hasClass("omat-tiedot-hover") || $(e.target).hasClass("omat-tiedot-clicked") ) {
1192                            itemToPosition.toggleClass("hover-content--active");
1193                        } else {
1194                            itemToPosition.removeClass("hover-content--active");
1195                        }
1196                    });
1197
1198                    if($(window).width() > 996) {
1199                        itemToPosition.css("right", (window.innerWidth - (itemToGetCoordinates.get(0).getBoundingClientRect().right) - 10));
1200
1201                        $(".omat-tiedot-hover").hover(function() {
1202                            itemToPosition.toggleClass("hover-content--active");
1203                        }, function () {
1204                            if(itemToPosition.find(":hover").length === 0) {
1205                                itemToPosition.toggleClass("hover-content--active");
1206                            }
1207                        });
1208
1209                        itemToPosition.hover(function() {
1210                            itemToPosition.addClass("hover-content--active");
1211                        }, function() {
1212                            itemToPosition.removeClass("hover-content--active");
1213                        });
1214
1215                        $(window).resize(function() {
1216                            itemToPosition.css("right", (window.innerWidth - (itemToGetCoordinates.get(0).getBoundingClientRect().right) - 10));
1217                        });
1218                    }
1219
1220                }
1221            });
1222        })(jQuery);
1223    </script>
1223
1224
1225	<style>
1226		#takeover-click-area-left {
1227			display: none;
1228		}
1229		#takeover-hero {
1230			display: none;
1231		}
1232		#takeover-click-area-right {
1233			display: none;
1234		}
1235
1236		
1237		@media screen and (min-width: 1362px) {
1238			body.takeover {
1239
1240
1241                background: #ebebeb url(https://imagepiste.com/wp-content/uploads/takeover/golfpiste_joulukalenteri_wallpaper.jpg?v=2);
1242			    background-size: 100% auto!important;
1243			    background-position: center 59px !important;
1244			    background-repeat: no-repeat;
1245
1246
1247
1248			    /*
1249
1250				background-attachment: fixed;
1251
1252			    background: #ebebeb url(https://golfpiste.com/wp-content/uploads/takeover/2021-06-10_jasenkortti/jasenkortti_wallpaper_2021.jpg);
1253			    background: #ebebeb url(https://golfpiste.com/wp-content/uploads/customers/ruutu/haltuunotto/golfpiste_usopen_2021_background.jpg);
1254				background: #ebebeb url(https://golfpiste.com/wp-content/uploads/takeover/2021-05-10-Teetime/Golfpiste_Teetime2021_Background.jpg);
1255			    background-size: 100% auto!important;
1256			    background-position: center 59px !important;
1257			    background-repeat: no-repeat;
1258
1259			    overflow-x: hidden;
1260			    background-attachment: fixed;
1261
1262			    background: #447000 url(/wp-content/uploads/customers/ruutu/haltuunotto/Ruutu_Masters_Golfpiste.jpg);
1263			    background-size: contain;
1264			    background-repeat-y: repeat;
1265			    background-repeat-x: no-repeat;
1266			    background-position: center -120px!important;
1267			    overflow-x: hidden;
1268			    */
1269		    }
1270
1271		    body.takeover .section-wrapper {
1272			    /* box-shadow: 0 0 80px rgba(0,0,128,.15); */
1273			}
1274			body.has-sub-nav.takeover {
1275			    background-position: center 91px !important;
1276			    /*
1277			    background-position: center -29px !important;
1278			    */
1279			}
1280
1281		}
1282		@media screen and (min-width: 1500px) {
1283			/*
1284			body.takeover #takeover-click-area-left {
1285			    display: block;
1286			    width: calc(50% - 690px);
1287			    height: 300px;
1288			    position: absolute;
1289			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2021-05-10-Teetime/teetime2021_taustakuva_badge.png);
1290			    left: .5vw;
1291			    transform: translateY(50px);
1292			    background-size: contain;
1293			    background-position: left top;
1294			    background-repeat: no-repeat;
1295			    max-width: 300px;
1296			}
1297			*/
1298			/*
1299			body.takeover #takeover-click-area-right {
1300			    display: block;
1301			    width: calc(50% - 690px);
1302			    height: 600px;
1303			    position: absolute;
1304			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2021-05-10-Teetime/teetime2021_taustakuva_badge_right.png);
1305			    right: .5vw;
1306			    transform: translateY(50px);
1307			    background-size: contain;
1308			    background-position: right top;
1309			    background-repeat: no-repeat;
1310			    max-width: 300px;
1311			}
1312			*/
1313
1314			body.takeover #takeover-click-area-left {
1315			    /* display: block; */
1316			    display: none;
1317			    width: calc(49% - 690px);
1318			    height: 500px;
1319			    position: fixed;
1320			    /* background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2021-06-10_jasenkortti/jasenkortti_wallpaper_badge01.png);
1321			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2022-06-04-Teetime/golfpiste-teetime-badge-left.png);
1322			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2022-08-18-Teetime/golfpiste_teetime_voita_badge_left.png); */
1323			    background-image: url(https://imagepiste.com/wp-content/uploads/takeover/masters2023/masters.png);
1324			    left: .8%;
1325			    transform: translateY(30px);
1326			    background-size: contain;
1327			    background-position: left top;
1328			    background-repeat: no-repeat;
1329			    max-width: 230px;
1330			}
1331			body.takeover #takeover-click-area-right {
1332			    /* display: block; */
1333			    display: none;
1334			    width: calc(49% - 690px);
1335			    height: 500px;
1336			    position: fixed;
1337			    /* background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2021-06-10_jasenkortti/jasenkortti_wallpaper_badge02.png);
1338			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2022-06-04-Teetime/golfpiste-teetime-badge-right.png);
1339			    background-image: url(https://golfpiste.com/wp-content/uploads/takeover/2022-08-18-Teetime/golfpiste_teetime_voita_badge_right.png); */
1340			    background-image: url(https://imagepiste.com/wp-content/uploads/takeover/masters2023/ruutu.png);
1341			    right: .8%;
1342			    transform: translateY(30px);
1343			    background-size: contain;
1344			    background-position: right top;
1345			    background-repeat: no-repeat;
1346			    max-width: 230px;
1347			}
1348		}
1349				#ad-wrapper-div-mob-takeover {
1350		    display: none;
1351		    background-image: unset;
1352		}
1353		.active #ad-wrapper-div-mob-takeover {
1354		    display: inline-block;
1355		    background-image: unset;
1356		    margin: 20px 0px;
1357		}
1358
1359	</style>
1360
1361	<meta property="og:title" value="Tietoa Golfpiste Plussasta" />
1362	<meta property="og:url" value="https://golfpiste.com/plus-info/" />
1363	<meta property="og:image" content="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/article-place-holder.jpg"/>
1364	<meta property="og:description" value="" />
1365	<meta property="fb:app_id" content="1836904943284684" />
1366	<meta name="description" content="">
1367	<meta name="keywords" content="">
1368	<meta name="twitter:card" value="summary" />
1369	<meta name="twitter:image" content="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/article-place-holder.jpg" />
1370	<meta name="twitter:url" value="https://golfpiste.com/plus-info/" />
1371	<meta name="twitter:title" value="Tietoa Golfpiste Plussasta" />
1372	<meta name="twitter:description" value="" />
1373	<meta name="twitter:site" value="@golfpiste" />
1374	<meta name="twitter:creator" value="@golfpiste" />
1375
1376	
1377	<style>
1378	.livescoring__mobile {
1379		display: none;
1380	}
1381	@media screen and (max-width: 996px) {
1382		.livescoring__desktop {
1383			display: none;
1384		}
1385
1386		.livescoring__mobile {
1387			display: block !important;
1388		}
1389	}
1390
1391	section.golfpiste-christmas-2020 {
1392		background-image: url(/wp-content/themes/golfpiste/assets/img/lift/golfpiste_jouluviesti_2020.jpg);
1393		width: 100%;
1394		padding-top: 43.78%;
1395		background-size: cover;
1396		background-position: center;
1397	}
1398
1399	@media screen and (max-width: 650px) {
1400		.livescoring-bar {
1401			padding: 8px 15px;
1402		}
1403		.livescoring__content .has-bg {
1404		    width: 100%;
1405		    padding-top: 72.5%;
1406		}
1407		.livescoring__content .livescoring__content__heading {
1408		    font-size: 21px;
1409		    text-align: center;
1410		    margin-bottom: 5px;
1411		    margin-top: 15px;
1412		}
1413		.livescoring__content .livescoring__column {
1414		    width: 100%;
1415		}
1416		.livescoring__content {
1417		    padding: 0;
1418		    margin: 0;
1419		}
1420		.livescoring__content .livescoring__block {
1421		    padding: 10px!important;
1422		    margin-bottom: 0px;
1423		}
1424		.livescoring__content .livescoring__content__right {
1425		    width: 100%;
1426		    margin: 0;
1427		}
1428
1429		section.golfpiste-christmas-2020 {
1430			background-image: url(/wp-content/themes/golfpiste/assets/img/lift/golfpiste_jouluviesti_2020_mobiili.jpg);
1431			width: calc(100% + 16px);
1432			padding-top: 68.78%;
1433			margin: 0 -8px 20px;
1434		}
1435
1436	}
1437
1438	</style>
1439
1440    <meta name="facebook-domain-verification" content="4chyrs9bc3s8bvrtkd60negdq2ctjh" />
1441
1442</head>
1443
1444	<body class="page-template-default page page-id-1426612  has-sub-nav not-full-width theme-golfpiste woocommerce-no-js">
1445
1446
1447
1448
1449
1450<style>
1451
1452    #prio1-login-frame {
1453        background: #FFFFFF;
1454        border-radius: 5px;
1455        max-height: 95%;
1456        overflow: scroll;
1457		width: 330px;
1458		max-width: calc(100% - 10px);
1459    }
1460
1461    #prio1-login-frame-parent {
1462        display: flex;
1463        justify-content: center;
1464        align-items: center;
1465        width: 100%;
1466        height: 100vh;
1467        position: fixed;
1468        top: 0;
1469        left: 0;
1470        z-index: 9999;
1471    }
1472
1473    @media (max-width: 600px) {
1474        #prio1-login-frame-parent {
1475            height: 100%;
1476        }
1477    }
1478
1479    #prio1-login-frame body {
1480        padding: 5px;
1481    }
1482
1483    #backdrop-close-popup {
1484        content: "";
1485        background: rgba(0,0,0,.61);
1486        position: relative;
1487        top: 0;
1488        left: 0;
1489        width: 100%;
1490        height: 100vh;
1491        z-index: 2147483646;
1492        backdrop-filter: blur(7px);
1493        -webkit-backdrop-filter: blur(7px);
1494    }
1495
1496    #prio1-login-frame-loader {
1497        position: absolute;
1498    }
1499
1500    /* iFrame tyylitykset */
1501
1502    #prio1-login-frame {
1503        border: 0px;
1504    }
1505
1506    /* Loader */
1507
1508    .lds-ring {
1509        display: inline-block;
1510        position: relative;
1511        width: 80px;
1512        height: 80px;
1513    }
1514    .lds-ring div {
1515        box-sizing: border-box;
1516        display: block;
1517        position: absolute;
1518        width: 64px;
1519        height: 64px;
1520        margin: 8px;
1521        border: 8px solid #F5A623;
1522        border-radius: 50%;
1523        animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
1524        border-color: #F5A623 transparent transparent transparent;
1525    }
1526    .lds-ring div:nth-child(1) {
1527        animation-delay: -0.45s;
1528    }
1529    .lds-ring div:nth-child(2) {
1530        animation-delay: -0.3s;
1531    }
1532    .lds-ring div:nth-child(3) {
1533        animation-delay: -0.15s;
1534    }
1535    @keyframes lds-ring {
1536        0% {
1537            transform: rotate(0deg);
1538        }
1539        100% {
1540            transform: rotate(360deg);
1541        }
1542    }
1543
1544    .open-popup {
1545        position: absolute;
1546        z-index: 2147483647;
1547        width: 30px;
1548        height: 30px;
1549        background: #f1f1f188;
1550        border-radius: 100%;
1551        display: flex;
1552        justify-content: center;
1553    }
1554
1555    .open-popup svg {
1556        width: 13px;
1557    }
1558
1559    #login-popup-close-button {
1560        display: none;
1561        cursor: pointer;
1562    }
1563
1564</style>
1565<!-- 
1565<script type="text/javascript" src="/login-system/javascript/lgf-prod-ver-1_0.js"></script>
1565 -->
1566<script type="text/javascript" src="https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/fi_FI/appleid.auth.js"></script>
vendor: 1 bytes, line 1566
1566
1567<script type="text/javascript">
1568    (function() {
1569        AppleID.auth.init({
1570            clientId : 'com.golfpiste.login-service',
1571            scope : 'name email',
1572            redirectURI : 'https://golfpiste.com/login-system/endpoints/login-apple-sign-in.php',
1573            state : '',
1574            usePopup : true //or false defaults to false
1575        });
1576    })();
1577</script>
1577
1578
1579<script>var useFacebook = true; </script>
vendor: 1 bytes, line 1579
1579
1580<script type="text/javascript" src="/login-system/javascript/login-form.js?v=2"></script>
1580
1581
1582<!--
1583<script>
1584    // Koodinpätkä, jolla voidaan käynnistää kirjautumisikkuna, jos käyttäjä ei ole kirjautunut
1585    (function(e, xhr, w, fd) {
1586        e.initEvent("initLoginFrame", true, false);
1587        xhr.open("POST", "/login-system/endpoints/login-checker.php?prio1-debug");
1588        xhr.onreadystatechange = function() {
1589            if(xhr.readyState === 4 && xhr.status === 200) {
1590                var d = JSON.parse(xhr.responseText); if(d && d.status === "false") w.dispatchEvent(e);
1591            }
1592        }; fd.append('check_for_login', true); xhr.send(fd);
1593    })(document.createEvent('Event'), new XMLHttpRequest(), window, new FormData());
1594</script>
1594
1595-->
1596
1597
1598<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 1598-1599
1598
1599<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1599GTM-M6VDH4
vendor: 83 bytes, lines 1599-1600
1599"
1600height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
1601<!-- End Google Tag Manager (noscript) -->
1602
1603
1604<div class="navigation-wrapper">
1605    <div id="navbar" class="navbar">
1606        <div class="navbar__wrapper">
1607            <img id="navbar__mob-nav-icon" src="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/[email protected]" alt="home" onclick="navigationToggle()">
1608            <span id="valikko-text">Valikko</span>
1609            <a class="navbar__logo" href="https://golfpiste.com"><img src="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/golfpiste_logo.png" alt="home"></a>
1610            <div class="navbar__icons">
1611                <a title="Haku" href="/sivustohaku"><span style="transform: translateY(3px);">Haku</span><img src="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/Icon-Search-Filled.svg"></a>
1612                <a title="Kirjaudu" class="login-btn-init">
1613                    <span style="transform: translateY(3px);">Kirjaudu</span>
1614                    <img class="omat-tiedot-clicked" src="https://golfpiste.com/wp-content/themes/golfpiste/assets/img/Icon-Circle-Outlined.svg">
1615                    </a>
1616
1617                
1618            </div>
1619        </div>
1620                    <div class="sub-nav-wrapper" id="subNavWrapper">
1621                <div class='parent-page-title'><h3><a href='/jasenyys'>Golfpiste Plus</a></h3></div>                <div class='navbar__subnav'><div class="menu-sivupalkki-jasenyys-container"><ul id="menu-sivupalkki-jasenyys" class="menu"><li id="menu-item-1446029" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1446029"><a href="https://golfpiste.com/plus/">Edut</a></li>
1622<li id="menu-item-1426760" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-1426612 current_page_item menu-item-1426760"><a href="https://golfpiste.com/plus-info/" aria-current="page">Info</a></li>
1623<li id="menu-item-1330510" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1330510"><a href="https://golfpiste.com/tilaa-jasenyys/">Tilaa</a></li>
1624<li id="menu-item-1330499" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1330499"><a target="_blank" rel="noopener" href="https://golfpiste.com/jasenyys-ota-yhteytta/">Ota yhteyttä</a></li>
1625<li id="menu-item-1330496" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1330496"><a target="_blank" rel="noopener" href="https://golfpiste.com/jasenyys-saannot/">Säännöt</a></li>
1626</ul></div></div>
1627            </div>
1628            <div id='mobile-page-title' class='mobile-page-title'><h3>Golfpiste Plus</h3></div>    </div>
1629    <div id="paavalikko-bg-layer" onclick="navigationToggle()"></div>
1630    <div id="paavalikko-wrapper">
1631	
1632	                
1633
1634        <div class="menu-paavalikko3-container"><ul id="menu-paavalikko3" class="menu"><li id="menu-item-1331411" class="navbar-hide-default menu-item menu-item-type-post_type menu-item-object-page current-menu-ancestor current-menu-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-1331411"><a href="https://golfpiste.com/jasenyys/">Golfpiste Plus</a>
1635<ul class="sub-menu">
1636	<li id="menu-item-1331409" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1331409"><a href="https://golfpiste.com/jasenyys/">Jäsenedut</a></li>
1637	<li id="menu-item-1427074" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-1426612 current_page_item menu-item-1427074"><a href="https://golfpiste.com/plus-info/" aria-current="page">Lisätietoa</a></li>
1638	<li id="menu-item-1331405" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1331405"><a href="https://golfpiste.com/tilaa-jasenyys/">Tilaa Jäsenyys</a></li>
1639	<li id="menu-item-1331406" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1331406"><a href="https://golfpiste.com/jasenyys-ota-yhteytta/">Ota yhteyttä</a></li>
1640	<li id="menu-item-1331407" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1331407"><a href="https://golfpiste.com/jasenyys-saannot/">Säännöt</a></li>
1641</ul>
1642</li>
1643</ul></div>
1644        <h2>Palvelut</h2>
1645        <div class="menu-paavalikko2-container"><ul id="menu-paavalikko2" class="menu"><li id="menu-item-1427076" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1427076"><a href="https://kauppa.golfpiste.com">Verkkokauppa</a></li>
1646<li id="menu-item-1285093" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285093"><a href="https://golfpiste.com/porssi/">Pörssi</a>
1647<ul class="sub-menu">
1648	<li id="menu-item-1285094" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285094"><a href="https://golfpiste.com/jata-ilmoitus/">Jätä ilmoitus</a></li>
1649	<li id="menu-item-1285095" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285095"><a href="https://golfpiste.com/omat-ilmoitukset/">Omat ilmoitukset</a></li>
1650	<li id="menu-item-1285097" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285097"><a href="https://golfpiste.com/porssin-ohjeet/">Pörssin ohjeet</a></li>
1651	<li id="menu-item-1285096" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285096"><a href="https://golfpiste.com/osakelista/">Osakelista</a></li>
1652</ul>
1653</li>
1654<li id="menu-item-1285098" class="menu-item menu-item-type-post_type_archive menu-item-object-forum menu-item-has-children menu-item-1285098"><a href="https://golfpiste.com/forum/">Forum</a>
1655<ul class="sub-menu">
1656	<li id="menu-item-1285099" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285099"><a href="https://golfpiste.com/forumin-ohjeet/">Forumin ohjeet</a></li>
1657	<li id="menu-item-1285100" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285100"><a href="https://golfpiste.com/forumin-saannot/">Forumin säännöt</a></li>
1658</ul>
1659</li>
1660<li id="menu-item-1285101" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285101"><a href="https://golfpiste.com/tapahtumakalenteri/">Tapahtumat</a>
1661<ul class="sub-menu">
1662	<li id="menu-item-1363448" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1363448"><a href="https://businessaamu.fi/">Golfpiste Businessaamu</a></li>
1663	<li id="menu-item-1363449" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1363449"><a href="https://golfkesa.fi/">Golfkesä-scramble</a></li>
1664	<li id="menu-item-1363451" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1363451"><a href="https://ladiesgolf.fi/">Ladies Golf</a></li>
1665</ul>
1666</li>
1667<li id="menu-item-1285102" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285102"><a href="https://golfpiste.com/kenttaopas/">Kenttäopas</a>
1668<ul class="sub-menu">
1669	<li id="menu-item-1458930" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1458930"><a href="https://golfpiste.com/kenttaopas/">Kenttäopas Suomi</a></li>
1670	<li id="menu-item-1458929" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1458929"><a href="https://golfpiste.com/kenttaopas-maailma/">Maailman golfkentät</a></li>
1671</ul>
1672</li>
1673<li id="menu-item-1326914" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1326914"><a href="https://golfpiste.com/kenttabongaus/">Kenttäbongaus</a></li>
1674<li id="menu-item-1426308" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1426308"><a href="/talviharjoittelu/">Talvihallit &#038; simulaattorit</a></li>
1675<li id="menu-item-1285103" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285103"><a href="https://golfpiste.com/pistebogeylaskuri/">Pistebogeylaskuri</a></li>
1676</ul></div>
1677        <h2>Sisällöt</h2>
1678        <div class="menu-paavalikko-container"><ul id="menu-paavalikko" class="menu"><li id="menu-item-1464956" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1464956"><a href="https://golfpiste.com/kenttaranking-2025/">Kenttäranking 2025</a></li>
1679<li id="menu-item-1464627" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1464627"><a href="https://golfpiste.com/kenttaranking-viro-2025/">Kenttäranking Viro 2025</a></li>
1680<li id="menu-item-1425436" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1425436"><a href="https://golfpiste.com/kenttaranking-2023/">Kenttäranking 2023</a></li>
1681<li id="menu-item-1354485" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1354485"><a href="https://golfpiste.com/kenttaranking-2021/">Kenttäranking 2021</a></li>
1682<li id="menu-item-1284982" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1284982"><a href="https://golfpiste.com/uutiset/">Uutiset</a></li>
1683<li id="menu-item-1285048" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285048"><a href="https://golfpiste.com/kategoria/podcast/">Podcast</a></li>
1684<li id="menu-item-1285050" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285050"><a href="https://golfpiste.com/kategoria/blogit/">Blogit</a></li>
1685<li id="menu-item-1429308" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1429308"><a href="https://www.lukusali.fi/?p=Golflehti">Golflehti</a></li>
1686<li id="menu-item-1285051" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285051"><a href="https://golfpiste.com/opetus/">Opetus</a>
1687<ul class="sub-menu">
1688	<li id="menu-item-1285052" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285052"><a href="https://golfpiste.com/kategoria/opetus/">Uutiset</a></li>
1689	<li id="menu-item-1285054" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285054"><a href="https://golfpiste.com/kategoria/opetusvideot/">Opetusvideot</a></li>
1690	<li id="menu-item-1285058" class="menu-item menu-item-type-post_type menu-item-object-forum menu-item-1285058"><a href="https://golfpiste.com/forum/alue/kilpagolf-harjoittelu/">Keskustelut</a></li>
1691</ul>
1692</li>
1693<li id="menu-item-1285060" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285060"><a href="https://golfpiste.com/matkailu/">Matkailu</a>
1694<ul class="sub-menu">
1695	<li id="menu-item-1285061" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285061"><a href="https://golfpiste.com/kategoria/matkailu/">
1695Uutiset</a></li>
1696	<li id="menu-item-1285064" class="menu-item menu-item-type-post_type_archive menu-item-object-matkapaketti menu-item-1285064"><a href="https://golfpiste.com/matkapaketit/">Matkapaketit</a></li>
1697	<li id="menu-item-1285065" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285065"><a href="https://golfpiste.com/matkanjarjestajat/">Matkanjärjestäjät</a></li>
1698	<li id="menu-item-1377329" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1377329"><a href="https://matkaopas.golfpiste.com/matkaoppaat/espanja/">Matkaopas Espanja</a></li>
1699	<li id="menu-item-1459232" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1459232"><a href="https://golfpiste.com/kenttaopas-maailma/">Maailman Golfkentät</a></li>
1700	<li id="menu-item-1285067" class="menu-item menu-item-type-post_type menu-item-object-forum menu-item-1285067"><a href="https://golfpiste.com/forum/alue/matkailu/">Keskustelut</a></li>
1701</ul>
1702</li>
1703<li id="menu-item-1285069" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285069"><a href="https://golfpiste.com/valineet/">Välineet</a>
1704<ul class="sub-menu">
1705	<li id="menu-item-1285070" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1285070"><a href="https://golfpiste.com/kategoria/valineet/">Uutiset</a></li>
1706	<li id="menu-item-1285072" class="menu-item menu-item-type-post_type menu-item-object-forum menu-item-1285072"><a href="https://golfpiste.com/forum/alue/valineet/">Keskustelut</a></li>
1707	<li id="menu-item-1285074" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285074"><a href="https://golfpiste.com/liikkeet/">Jälleenmyyjät</a></li>
1708</ul>
1709</li>
1710<li id="menu-item-1285076" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-1285076"><a href="https://golfpiste.com/aloita-golf/">Aloita golf</a>
1711<ul class="sub-menu">
1712	<li id="menu-item-1285077" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285077"><a href="https://golfpiste.com/aloita-golf/mita-on-golf/">Mitä on golf</a></li>
1713	<li id="menu-item-1285079" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285079"><a href="https://golfpiste.com/aloita-golf/miten-golfia-voi-kokeilla/">Miten golfia voi kokeilla?</a></li>
1714	<li id="menu-item-1285080" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285080"><a href="https://golfpiste.com/aloita-golf/alkeiskurssi-ja-green-card/">Alkeiskurssi ja green card</a></li>
1715	<li id="menu-item-1285081" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285081"><a href="https://golfpiste.com/aloita-golf/varusteet-ja-valineet/">Varusteet ja välineet</a></li>
1716	<li id="menu-item-1285082" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285082"><a href="https://golfpiste.com/aloita-golf/harjoittelu/">Harjoittelu</a></li>
1717	<li id="menu-item-1285083" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285083"><a href="https://golfpiste.com/aloita-golf/harrastamisen-muodot/">Harrastamisen muodot</a></li>
1718	<li id="menu-item-1285084" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285084"><a href="https://golfpiste.com/aloita-golf/tasoitus/">Tasoitus</a></li>
1719	<li id="menu-item-1285085" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285085"><a href="https://golfpiste.com/aloita-golf/saannot/">Säännöt</a></li>
1720	<li id="menu-item-1285086" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285086"><a href="https://golfpiste.com/aloita-golf/golfkayttaytyminen/">Golfkäyttäytyminen</a></li>
1721	<li id="menu-item-1285088" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285088"><a href="https://golfpiste.com/golfsanasto/">Golfsanasto</a></li>
1722</ul>
1723</li>
1724<li id="menu-item-1285089" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1285089"><a href="https://golfpiste.com/seurauutiset/">Seurauutiset</a></li>
1725</ul></div>
1726
1727
1728        <span class="commercial">* = kaupallinen yhteistyö</span>
1729    </div>
1730    <span id="nav--close"><i class="fas fa-times"></i></span>
1731    
1731<script>
1732        function navigationToggle() {
1733            if (document.getElementById("paavalikko-wrapper").classList.contains('open')) {
1734                document.getElementById("paavalikko-wrapper").classList.remove('open');
1735                document.getElementById("nav--close").classList.remove('open');
1736                document.getElementById("paavalikko-bg-layer").classList.remove('active');
1737                document.body.classList.remove('mobile-no-scroll');
1738            }
1739            else {
1740                document.getElementById("paavalikko-wrapper").classList.add('open');
1741                document.getElementById("nav--close").classList.add('open');
1742                document.body.classList.add('mobile-no-scroll');
1743                document.getElementById("paavalikko-bg-layer").classList.add('active');
1744            }
1745        }
1746        var elements = document.getElementsByClassName('menu-item-has-children');
1747        for (var i = 0; i < elements.length; i++) {
1748            elements[i].addEventListener("click", function(){
1749                if (getComputedStyle(this.children[1]).display=='none' || getComputedStyle(this.children[1]).display=='') {
1750                    this.children[1].style.display='block';
1751                }
1752                else {
1753                    this.children[1].style.display='none';
1754                }
1755            });
1756        }
1757        document.getElementById('nav--close').addEventListener("click", function(){
1758            document.getElementById('paavalikko-wrapper').classList.remove('open');
1759            document.getElementById("nav--close").classList.remove('open');
1760            document.getElementById("paavalikko-bg-layer").classList.remove('active');
1761            document.body.classList.remove('mobile-no-scroll');
1762        });
1763    </script>
1763
1764</div>
1765
1766<script>
1767    const LookForLiveScoringCookie = function (){
1768        let getcookie = function (name) {
1769            let cookieArr = document.cookie.split(";");
1770            for (let i = 0; i < cookieArr.length; i++) {
1771                let cookiePair = cookieArr[i].split("=");
1772                if (name == cookiePair[0].trim()) {
1773                    return decodeURIComponent(cookiePair[1]);
1774                }
1775            }
1776            return null;
1777        }
1778        let setcookie = function (name, value, daysToLive) {
1779            var cookie = name + "=" + encodeURIComponent(value);
1780            if (typeof daysToLive === "number") {
1781                cookie += "; max-age=" + (daysToLive * 24 * 60 * 60);
1782                document.cookie = cookie;
1783            }
1784        }
1785        let getCurrentCookieVal = getcookie('image-changer-cookie');
1786        let newCookieVal = 1;
1787        if(getCurrentCookieVal != null){
1788            newCookieVal = getCurrentCookieVal==0?1:0;
1789        }
1790        setcookie('image-changer-cookie', newCookieVal,1);
1791    }
1792    LookForLiveScoringCookie();
1793</script>
1793
1794<div class="content-wrapper">
1795<link rel="stylesheet" href="/wp-content/themes/golfpiste/css/flickity-2.css?ver=39">
1796<style>
1797    #footer {
1798        box-shadow: 0 -20px 15px 0 rgba(0, 0, 0, 0.1);
1799    }
1800    #bb-iawr-inarticle-golfpiste {
1801        margin-bottom: 35px !important;
1802    }
1803    .header-text {
1804        font-size: 24px;
1805        font-family: barlowbold;
1806    }
1807    .special-article-content-container p{
1808        font-family: 'barlowregular';
1809        line-height: 1.6;
1810        font-size: 24px;
1811    }
1812    .flickity-page-dots{
1813        display: none;
1814    }
1815    .special-element.flickity-carousel .carousel-cell-container p{
1816        font-family: 'barlowsemibold';
1817        font-size: 34px;
1818        text-shadow: -1px -1px 6px #000;
1819        line-height: 1.1em;
1820    }
1821    .special-element.parallax-scrolling-images .parallax-image-container p{
1822        font-family: 'barlowbold';
1823        font-size: calc(50px + .5vw);
1824        text-shadow: -1px -1px 6px #000;
1825        width: 100%;
1826        line-height: 1.2em;
1827    }
1828    #tila-jasenyys-fixed{
1829        position: fixed;
1830        background-color: #f3a622;
1831        bottom: 40px;
1832        right: 40px;
1833        width: 130px;
1834        height: 130px;
1835        border-radius: 50%;
1836        text-decoration: unset;
1837        color: #000;
1838        font-family: 'barlowbold';
1839        font-size: 23px;
1840        display: flex;
1841        align-items: center;
1842        justify-content: center;
1843        text-align: center;
1844        line-height: 1.1em;
1845        transform: rotateZ(-13deg);
1846        z-index: 200;
1847        font-weight: normal;
1848		box-shadow: -10px 0 20px rgba(0, 0, 0, .2);
1849    }
1850    #gp-plus-hero-balloon{
1851        background-color: #f3a622;
1852        width: 150px;
1853        height: 150px;
1854        border-radius: 50%;
1855        text-decoration: unset;
1856        color: #000;
1857        font-size: 19px;
1858        display: block;
1859        text-align: center;
1860        line-height: 1.1em;
1861        transform: rotateZ(-13deg);
1862        font-weight: normal;
1863        position: absolute;
1864        left: 11px;
1865        top: 116px;
1866    }
1867    #gp-plus-hero-balloon p{
1868        margin: 0px;
1869        margin-top: 26px;
1870        font-family: 'barlowbold';
1871        color: #000;
1872    }
1873    #gp-plus-hero-balloon .price{
1874        font-size: 50px;
1875        font-family: 'barlowbold';
1876        margin-top: 14px;
1877    }
1878    #gp-plus-hero-head{
1879        padding: 0px 150px;
1880        box-sizing: border-box;
1881        position: relative;
1882        display: block;
1883        margin: 0px auto;
1884        width: fit-content;
1885        width: 100%;
1886        max-width: 950px;
1887    }
1888    #gp-plus-hero-balloon .price span{
1889        font-size: 25px;
1890        margin-top: -8px;
1891    }
1892    #gp-plus-hero-head .introduction{
1893        font-family: 'barlowregular';
1894        font-size: 23px;
1895        display: flex;
1896        align-items: flex-end;
1897        justify-content: center;
1898        margin: 0px 0px 20px;
1899    }
1900    #gp-plus-hero-head .introduction img{
1901        width: 108px;
1902        height: 26px;
1903        object-fit: contain;
1904        margin-right: 7px;
1905        margin-bottom: 2px;
1906    }
1907    #gp-plus-hero-head .introduction b{
1908        margin-left: 5px;
1909        font-family: 'barlowbold';
1910    }
1911    #gp-plus-hero-logo{
1912        display: block;
1913        width: 478px;
1914        height: 97px;
1915        object-fit: contain;
1916        margin: 0px auto;
1917    }
1918    #gp-plus-hero-head .motto{
1919        font-family: 'barlowbold';
1920        font-size: 30px;
1921        width: 100%;
1922        text-align: center;
1923        margin: 10px 0px 0px;
1924    }
1925    #gp-plus-hero-head .motto span{
1926        font-family: 'barlowbold';
1927        font-size: inherit;
1928        color: #f3a622;
1929    }
1930    #gp-plus-hero {
1931        background-image: url(/wp-content/themes/golfpiste/assets/img/Golfpiste-Plus-hexa.jpg);
1932        background-size: cover;
1933        background-position: center;
1934        background-repeat: no-repeat;
1935        padding-top: 40px;
1936        background-attachment: fixed;
1937        margin-bottom: 0px;
1938    }
1939    #gp-plus-hero-content{
1940        display: block;
1941        margin: 30px auto 0px;
1942        width: fit-content;
1943    }
1944    #gp-plus-hero-visual{
1945        width: 460px;
1946        height: 500px;
1947        object-fit: contain;
1948        margin-top: -15px;
1949        margin-bottom: -10px;
1950    }
1951    #gp-plus-hero-foot{
1952        margin: -47px auto 0px;
1953        text-align: center;
1954        display: block;
1955        width: 100%;
1956        max-width: 800px;
1957        padding: 0px 15px 40px;
1958        box-sizing: border-box;
1959    }
1960    #gp-plus-hero-foot p{
1961        font-family: 'barlowmedium';
1962        font-size: 25px;
1963        margin: 0px;
1964        line-height: 1.5em;
1965    }
1966    #gp-plus-hero-foot p span{
1967        font-size: inherit;
1968        color: #f3a622;
1969    }
1970    .gp-plus-button{
1971        font-family: 'barlowbold';
1972        font-size: 28px;
1973        text-decoration: unset;
1974        color: #000;
1975        background-color: #f3a622;
1976        border: none;
1977        outline: unset;
1978        box-shadow: unset;
1979        border-radius: 30px;
1980        padding: 11px 32px 10px;
1981        min-width: 175px;
1982        margin-top: 45px;
1983    }
1984    .gp-plus-button:hover{
1985        color: #000;
1986    }
1987    #gp-plus-foot{
1988        background-image: url(/wp-content/themes/golfpiste/assets/img/Golfpiste-Plus-hexa.jpg);
1989        background-size: cover;
1990        background-position: center;
1991        background-repeat: no-repeat;
1992        padding-top: 110px;
1993        background-attachment: fixed;
1994        text-align: center;
1995        padding-bottom: 120px;
1996        margin-top: -35px;
1997    }
1998    #gp-plus-foot p{
1999        margin: 0px;
2000        font-family: 'barlowbold';
2001        font-size: 51px;
2002        margin-bottom: 46px;
2003        width: 100%;
2004        padding: 0px 20px;
2005        box-sizing: border-box;
2006    }
2007    #gp-plus-foot p span{
2008        font-family: inherit;
2009        font-size: inherit;
2010        color: #f3a622;
2011    }
2012    #gp-plus-benefits{
2013        text-align: center;
2014        padding: 30px 0px 40px;
2015        background-color: #f3a622;
2016        box-shadow: 0 -20px 15px 0 rgba(0, 0, 0, 0.1);
2017        margin-bottom: 50px;
2018    }
2019    #gp-plus-benefits .gp-plus-button{
2020        background-color: #000;
2021        color: #fff;
2022    }
2023    #gp-plus-benefits .title{
2024        margin: 0px;
2025        font-family: 'barlowbold';
2026        font-size: 51px;
2027        margin-bottom: 30px;
2028        width: 100%;
2029        padding: 0px 20px;
2030        box-sizing: border-box;
2031        color:#000;
2032    }
2033    #gp-plus-benefits .info{
2034        font-size: 24px;
2035        margin: 0px 0px 40px;
2036        width: 100%;
2037        padding: 0px 20px;
2038        box-sizing: border-box;
2039    }
2040    #mobile-page-title {
2041        display: block !important;
2042    }
2043    @media screen and (max-width: 550px) {
2044        .special-element.parallax-scrolling-images .parallax-image-container p {
2045            font-size: calc(30px + .5vw);
2046        }
2047    }
2048    @media screen and (max-width: 500px) {
2049        .special-element.flickity-carousel .carousel-cell-container p {
2050            font-size: 27px;
2051        }
2052    }
2053    @media screen and (max-width: 750px) {
2054        #gp-plus-hero-head .introduction{
2055            display: block;
2056            text-align: center;
2057            padding: 0px 88px;
2058        }
2059        #gp-plus-hero-head .introduction b{
2060            margin-left: 0px;
2061        }
2062        #gp-plus-hero-head .introduction img{
2063            margin-bottom: 4px;
2064            margin-right: 0px;
2065        }
2066        #gp-plus-hero-head{
2067            padding: 0px 40px;
2068            width: 100%;
2069        }
2070        #gp-plus-hero-logo{
2071            width: calc(100vw - 80px);
2072            height: calc(26vw - 60px);
2073            max-width: 478px;
2074            max-height: 97px;
2075        }
2076
2077
2078        #gp-plus-hero-balloon {
2079            bottom: unset;
2080            top: calc(100% + 10px);
2081            left: unset;
2082            right: 48px;
2083            transform: rotateZ(3deg);
2084        }
2085        #gp-plus-hero-visual{
2086            width: calc(100vw - 20px);
2087            height: calc(100vw - 20px);
2088            max-width: 460px;
2089            max-height: 500px
2090        }
2091    }
2092    @media screen and (max-width: 650px) {
2093        #gp-plus-foot p{
2094            font-size: 36px;
2095            margin-bottom: 30px;
2096        }
2097        #gp-plus-benefits .title{
2098            font-size: 36px;
2099            margin-bottom: 25px;
2100        }
2101        #gp-plus-benefits .info{
2102            font-size: 22px;
2103            margin: 0px 0px 35px;
2104        }
2105        .special-article-content-container p{
2106            font-size: 19px;
2107        }
2108    }
2109    @media screen and (max-width: 550px) {
2110        #gp-plus-hero-balloon p:not(.price){
2111            margin-top: 19px;
2112        }
2113        #gp-plus-hero-balloon .price{
2114            font-size: 41px;
2115            margin-top: 12px;
2116        }
2117        #gp-plus-hero-balloon .price span {
2118            font-size: 23px;
2119            margin-top: -6px;
2120        }
2121        #gp-plus-hero-balloon {
2122            width: 120px;
2123            height: 120px;
2124            font-size: 17px;
2125        }
2126        #gp-plus-hero-head .introduction{
2127            max-width: 200px;
2128            padding: 0px 0px;
2129            margin: 0px auto 20px;
2130        }
2131        #gp-plus-hero-head{
2132            padding: 0px 20px;
2133        }
2134        #gp-plus-hero-logo {
2135            width: calc(100vw - 40px);
2136            height: calc(26vw - 20px);
2137            max-width: 364px;
2138            max-height: 74px;
2139        }
2140        #gp-plus-hero-head .motto{
2141            font-size: 22px;
2142        }
2143        #gp-plus-hero-foot{
2144            margin: -26px auto 0px;
2145        }
2146        #gp-plus-hero-foot p{
2147            font-size: 22px;
2148        }
2149
2150        .gp-plus-button{
2151            margin-top: 33px;
2152            font-size: 26px;
2153        }
2154
2155    }
2156	#gp-plus-hero-2025 {
2157		background-color: black;
2158		background-image: url(/wp-content/themes/golfpiste/assets/img/golfpiste-plus-2025/hexa-black-pattern.png);
2159		margin: -2px 0 0 0;
2160		text-align: center;
2161		background-attachment: fixed;
2162		background-size: 3vh;
2163	}
2164	#gp-plus-hero-img-2025 {
2165		width: 100%;
2166	}
2167	div#gp-plus-hero-content-2025 {
2168		max-width: 1280px;
2169	}
2170	#gp-plus-hero-button-2025 {
2171		font-family: 'barlowbold';
2172		font-size: 28px;
2173		text-decoration: unset;
2174		color: #000;
2175		background-color: #ffffff;
2176		border: none;
2177		outline: unset;
2178		box-shadow: unset;
2179		border-radius: 32px;
2180		padding: 16px 32px 10px;
2181		min-width: 175px;
2182		margin-top: 0;
2183		text-transform: uppercase;
2184		margin-bottom: 5%;
2185	}
2186	
2187	@media screen and (max-width: 599px) {
2188		#gp-plus-hero-button-2025 {
2189			margin-bottom: 14%;
2190			margin-top: 1%;
2191			font-size: 24px;
2192			padding: 15px 24px 10px;
2193		}
2194	}
2195</style>
2196
2197<script src="https://unpkg.com/@lottiefiles/lottie-player@latest/dist/lottie-player.js"></script>
2197
2198
2199
2200<style>
2201#gp-plus-hero2026 a {
2202    width: 100%;
2203    height: 746px;
2204    background-image: url(https://golfpiste.com/wp-content/themes/golfpiste/assets/img/golfpiste-plus-2026/Golfpiste-Plus_Hero062026_desktop.jpg);
2205    display: block;
2206    background-repeat: no-repeat;
2207    background-position: center;
2208    background-size: cover;
2209	margin-top: -2px;
2210}
2211
2212@media screen and (min-width: 1820px) {
2213	#gp-plus-hero2026 a {
2214        width: 100%;
2215        height: auto;
2216        aspect-ratio: 1750 / 723;
2217	}
2218}
2219
2220@media screen and (max-width: 899px) {
2221	#gp-plus-hero2026 a {
2222		margin-top: 0px;
2223	}
2224}
2225
2226@media screen and (max-width: 782px) {
2227    #gp-plus-hero2026 a {
2228        margin-top: -14px;
2229    }
2230}
2231
2232@media screen and (max-width: 1280px) {
2233	#gp-plus-hero2026 a {
2234        width: 100%;
2235        height: auto;
2236        aspect-ratio: 640 / 373;
2237	}
2238}
2239
2240@media screen and (max-width: 600px) {
2241	#gp-plus-hero2026 a {
2242		background-image: url(https://golfpiste.com/wp-content/themes/golfpiste/assets/img/golfpiste-plus-2026/Golfpiste-Plus_Hero062026_mobiili.jpg);
2243        width: 100%;
2244        height: auto;
2245        aspect-ratio: 600 / 789;
2246	}
2247}
2248
2249section#gp-plus-hero2026 {
2250    margin-bottom: 0;
2251}
2252
2253</style>
2254
2255<section id="gp-plus-hero2026">
2256  <a href="https://golfpiste.com/tilaa-jasenyys" target="_TOP">
2257
2258  </a>
2259</section>
2260
2261
2262<div id="gp-plus-benefits">
2263    <p class="title">Säästä satoja euroja!</p>
2264    <a class="button gp-plus-button" target="_blank" href="https://golfpiste.com/plus#companies-wrapper">Katso edut</a>
2265</div>
2266
2267<div class="special-article-content-container flow" style="--flow: 35px">
2268
2269    <p><div class='special-element flickity-carousel'><div class='carousel-cell'><div class='carousel-cell-spacer'><a  href='https://golfpiste.com/plus/'  style='background-image: url(https://golfpiste.com/wp-content/uploads/2024/03/Slider_vasen_swaippaus.jpg);' class='carousel-cell-container'><p  href='https://golfpiste.com/plus/'   class='text normal center' style='color: #fff; background-color: transparent'>-50% simulaattoreista.</p></a></div></div><div class='carousel-cell'><div class='carousel-cell-spacer'><a  href='https://golfpiste.com/plus/'  style='background-image: url(https://golfpiste.com/wp-content/uploads/2024/03/slider_Deafault.jpg);' class='carousel-cell-container'><p  href='https://golfpiste.com/plus/'   class='text normal center' style='color: #fff; background-color: transparent'>Etuja kymmenillä eri kentillä</p></a></div></div><div class='carousel-cell'><div class='carousel-cell-spacer'><a  href='https://golfpiste.com/plus/'  style='background-image: url(https://golfpiste.com/wp-content/uploads/2025/05/Stenna_Westerlund_1.jpg);' class='carousel-cell-container'><p  href='https://golfpiste.com/plus/'   class='text normal center' style='color: #fff; background-color: transparent'>Yksityisopetus puoleen hintaan.</p></a></div></div></div></p>
2270<p style="text-align: center;">Vie golfharrastuksesi uudelle tasolle Golfpiste Plus -jäsenyyden avulla. Plus -jäsenenä saat satojen eurojen arvoisia etuja green feestä, talviharjoittelusta ja paljon muusta.</p>
2271<p style="text-align: center;"><strong>HUOM!</strong> Kaksi yhden hinnalla -etuja hyödynnettäessä riittää, että vain toisella pelaajalla on Golfpiste Plus -jäsenyys!</p>
2272<p><div class='special-element parallax-scrolling-images'><section><div class='parallax-image-container center' style='background-image: url(https://golfpiste.com/wp-content/uploads/2024/03/Isokuva_1-1.jpg);background-repeat:repeat;'><p class='normal' style='color: #fff; background-color: transparent'>Kymmeniä eri kenttiä pelattavana.</p><div class='parallax-image' data-mobile-bg='https://golfpiste.com/wp-content/uploads/2024/03/Isokuva_1-1.jpg' data-desktop-bg='https://golfpiste.com/wp-content/uploads/2024/03/Isokuva_1-1.jpg''></div></div></section><section><div class='parallax-image-container center' style='background-image: url(https://golfpiste.com/wp-content/uploads/2024/03/Parnu-1.jpg);background-repeat:repeat;'><p class='normal' style='color: #fff; background-color: transparent'>Useita kenttiä Baltiassa.</p><div class='parallax-image' data-mobile-bg='https://golfpiste.com/wp-content/uploads/2024/03/Parnu-1.jpg' data-desktop-bg='https://golfpiste.com/wp-content/uploads/2024/03/Parnu-1.jpg''></div></div></section><section><div class='parallax-image-container center' style='background-image: url(https://golfpiste.com/wp-content/uploads/2025/05/Stenna_Westerlund_1.jpg);background-repeat:repeat;'><p class='normal' style='color: #fff; background-color: transparent'>Yksityisopetus puoleen hintaan.</p><div class='parallax-image' data-mobile-bg='https://golfpiste.com/wp-content/uploads/2025/05/Stenna_Westerlund_1.jpg' data-desktop-bg='https://golfpiste.com/wp-content/uploads/2025/05/Stenna_Westerlund_1.jpg''></div></div></section><section><div class='parallax-image-container center' style='background-image: url(https://golfpiste.com/wp-content/uploads/2025/05/Pego_4.png);background-repeat:repeat;'><p class='normal' style='color: #fff; background-color: transparent'>-50% simulaattoreista.</p><div class='parallax-image' data-mobile-bg='https://golfpiste.com/wp-content/uploads/2025/05/Pego_4.png' data-desktop-bg='https://golfpiste.com/wp-content/uploads/2025/05/Pego_4.png''></div></div></section></div></p>
2273</div>
2274
2275<div id="gp-plus-foot">
2276    <p>Paras tapa harrastaa. <span>Piste</span></p>
2277    <a target="_blank" class="button gp-plus-button" href="https://golfpiste.com/jasenyys/#companies-wrapper">Katso edut</a>
2278</div>
2279
2280<script src="/wp-content/themes/golfpiste/assets/js/flickity-2.3.0.js"></script>
vendor: 2 bytes, line 2280
2280
2281<script>
2282    document.addEventListener('DOMContentLoaded', async function(e) {
2283        /*let benefitCardNum = await fetchBenefitCardNumber();
2284        if(benefitCardNum === null){*/
2285            let html = `<a id="tila-jasenyys-fixed" href="/tilaa-jasenyys">Tilaa Golfpiste+ tästä!</a>`;
2286            document.body.insertAdjacentHTML('beforeend',html);
2287       // }
2288    });
2289    async function fetchBenefitCardNumber(){
2290        let req = await fetch( "/benefits-api/ajax/get_benefitcard_number.php");
2291        if( req.ok ) {
2292            let number = await req.text();
2293            if(number !== ""){
2294                let req = await fetch( `https://intra.golfpiste.com/api/memberships/fetch/${number}/`);
2295                if( req.ok ) {
2296                    let values = await req.text();
2297                    let payload = JSON.parse(values);
2298                    if("payload" in payload && "membership" in payload["payload"]
2299                    && "premium_expires" in payload["payload"]["membership"]){
2300                        let expire = new Date(payload["payload"]["membership"]["premium_expires"]);
2301                        if(!isNaN(expire)){
2302                            let currentDate = new Date();
2303                            if(expire >= currentDate){
2304                                return number;
2305                            }
2306                        }
2307                    }
2308                }
2309            }
2310        }
2311        return null;
2312    }
2313</script>
2313
2314</div>
2315<div id="footer" class="footer bg-dark-blue">
2316    <div class="footer-wrapper">
2317        <div class="logo-wrapper"><div class="logo-line"></div><div class="golfpiste-com-logo"></div><div class="logo-line"></div></div>
2318        <div class="footer-column column-1">
2319            <div class="golfpiste-events-logo"></div>
2320            <a href="/jasenyys"><div class="golfpiste-jasenkortti-logo"></div></a>
2321            <a href="http://www.mediakortit.fi/mediakortit/golflehti/986/#schedules" class="footer-link" target="_blank">Golflehden julkaisuaikataulu</a>
2322            <a href="https://yrityksille.otavamedia.fi/brandit/golflehti/" class="footer-link" target="_blank">Golflehti & Golfpiste mediakortti</a>
2323            <a href="https://yrityksille.otavamedia.fi/tekniset-tiedot-ja-hinnat/" target="_blank" class="footer-link">Mediahinnasto</a>
2324            <a href="https://digitieto.otavamedia.fi/" target="_blank" class="footer-link">Tietoa verkon kävijöistä</a>
2325            <a href="/ota-yhteytta#organisaatio" class="footer-link">Golfpisteen yhteystiedot</a>
2326            <a href="/ota-yhteytta" class="footer-link">Lähetä palautetta</a>
2327        </div>
2328        <div class="footer-column column-2">
2329            <h3>Asiakaspalvelu</h3>
2330            <span class="footer-link">Digipalvelut <a href="tel:091566227">(09) 156 6227</a></span>
2331            <span class="footer-link">Avoinna ma–pe 8–16</span>
2332            <span class="footer-link">Painettu lehti <a href="tel:09156665">(09) 156 665</a></span>
2333            <span class="footer-link">Avoinna ma–pe 8–17</span>
2334            <a href="mailto:[email protected]" class="footer-link"><i class="fa fa-envelope" aria-hidden="true"></i> (digi) [email protected]</a>
2335            <a href="mailto:[email protected]" class="footer-link"><i class="fa fa-envelope" aria-hidden="true"></i> [email protected]</a>
2336            <a href="https://otavamedia.fi/tietosuoja/" target="_blank" class="footer-link">Tietosuojaseloste</a>
2337            <a href="/verkkopalvelun-kayttoehdot/" class="footer-link">Käyttöehdot</a>
2338            <span style="cursor: pointer" class="footer-link manageSettings">Evästeasetukset</span>
2339        </div>
2340
2341        <div class="footer-some-icons">
2342            <div>
2343                <a href="https://www.facebook.com/golfpiste/" target="_blank"><i class="fab fa-facebook"></i><span>Facebook</span></a>
2344            </div>
2345            <div>
2346                <a href="https://twitter.com/golfpiste?lang=fi" target="_blank"><i class="fab fa-twitter-square"></i><span>Twitter</span></a>
2347            </div>
2348            <div>
2349                <a href="https://www.instagram.com/golfpiste_ig/?hl=fi" target="_blank"><i class="fab fa-instagram"></i><span>Instagram</span></a>
2350            </div>
2351            <div>
2352                <a href="https://www.youtube.com/user/Golfpistecom" target="_blank"><i class="fab fa-youtube-square"></i><span>Youtube</span></a>
2353            </div>
2354        </div>
vendor: 94 bytes, lines 2354-2357
2354
2355
2356        <script src="https://www.google.com/recaptcha/api.js" async defer></script>
2357        
2357<script>
2358            function submitSubscribeNewsletter(token) {
2359                console.log("Submit triggered");
2360                document.getElementById("uutiskirje-form").submit();
2361            }
2362        </script>
2362
2363        <style>
2364            .grecaptcha-badge { visibility: hidden; }
2365            .g-recaptcha { position: absolute; }
2366            p.reCaptcha-badge-text {
2367                font-size: 9px;
2368                color: white;
2369            }
2370            p.reCaptcha-badge-text a {
2371                color: #ffd288;
2372                font-weight: bold;
2373            }
2374
2375            .gp_uutiskirje_submit {
2376                -webkit-appearance: none !important;
2377                -moz-appearance: none !important;
2378                cursor: pointer;
2379                height: 41px;
2380                overflow: hidden;
2381                position: relative;
2382                background-color: #f5a623!important;
2383                border: 1px #ea9200 solid;
2384                border-radius: 5px;
2385                box-shadow: 0 4px 6px rgba(0, 0, 0, .2);
2386                -webkit-transition: 0.5s ease-out;
2387                -moz-transition: 0.5s ease-out;
2388                -o-transition: 0.5s ease-out;
2389                transition: 0.5s ease-out;
2390                width: 150px !important;
2391                font-size: 17px;
2392                font-family: "barlowsemibold";
2393                text-shadow: 0 1px 2px #888;
2394                color: white;
2395                margin-top: 20px!important;
2396                line-height: 39px;
2397            }
2398
2399            .footer-subscribe-newsletter a {
2400                display: flex;
2401                justify-content: center;
2402            }
2403
2404        </style>
2405
2406                    <div class="footer-subscribe-newsletter">
2407                <span>Tilaa Golfpisteen maanantaisin ja perjantaisin lähetettävä uutiskirje, niin pysyt ajan tasalla golfalan ilmiöistä ja uutisista! Tilaa kirje syöttämällä sähköpostiosoitteesi  alla olevaan kenttään.</span>
2408                <a href="/tilaa-uutiskirje"><div class="gp_uutiskirje_submit">Tilaa uutiskirje</div></a>
2409            </div>
2410        
2411
2412
2413    </div>
2414</div>
2415<div id="otavamedia-footer"><a href="https://otavamedia.fi/tuotteet-ja-palvelut/" class="footer-otavamedia-logo"></a>
2416
2417</div>
2418
2419		
2419<script>
2420			window.RS_MODULES = window.RS_MODULES || {};
2421			window.RS_MODULES.modules = window.RS_MODULES.modules || {};
2422			window.RS_MODULES.waiting = window.RS_MODULES.waiting || [];
2423			window.RS_MODULES.defered = true;
2424			window.RS_MODULES.moduleWaiting = window.RS_MODULES.moduleWaiting || {};
2425			window.RS_MODULES.type = 'compiled';
2426		</script>
2426
2427		
2427<script type='text/javascript'>( $ => {
2428	/**
2429	 * Displays toast message from storage, it is used when the user is redirected after login
2430	 */
2431	if ( window.sessionStorage ) {
2432		$( window ).on( 'tcb_after_dom_ready', () => {
2433			const message = sessionStorage.getItem( 'tcb_toast_message' );
2434
2435			if ( message ) {
2436				tcbToast( sessionStorage.getItem( 'tcb_toast_message' ), false );
2437				sessionStorage.removeItem( 'tcb_toast_message' );
2438			}
2439		} );
2440	}
2441
2442	/**
2443	 * Displays toast message
2444	 *
2445	 * @param {string}   message  - message to display
2446	 * @param {Boolean}  error    - whether the message is an error or not
2447	 * @param {Function} callback - callback function to be called after the message is closed
2448	 */
2449	function tcbToast( message, error, callback ) {
2450		/* Also allow "message" objects */
2451		if ( typeof message !== 'string' ) {
2452			message = message.message || message.error || message.success;
2453		}
2454		if ( ! error ) {
2455			error = false;
2456		}
2457		TCB_Front.notificationElement.toggle( message, error ? 'error' : 'success', callback );
2458	}
2459} )( typeof ThriveGlobal === 'undefined' ? jQuery : ThriveGlobal.$j );
2460</script>
2460<style type="text/css" id="tve_notification_styles"></style>
2461<div class="tvd-toast tve-fe-message" style="display: none">
2462	<div class="tve-toast-message tve-success-message">
2463		<div class="tve-toast-icon-container">
2464			<span class="tve_tick thrv-svg-icon"></span>
2465		</div>
2466		<div class="tve-toast-message-container"></div>
2467	</div>
2468</div>	
2468<script type="text/javascript">
2469		(function () {
2470			var c = document.body.className;
2471			c = c.replace(/woocommerce-no-js/, 'woocommerce-js');
2472			document.body.className = c;
2473		})();
2474	</script>
2474
2475	<link rel='stylesheet' id='rs-plugin-settings-css' href='https://golfpiste.com/wp-content/plugins/revslider/public/assets/css/rs6.css?ver=6.6.20' type='text/css' media='all' />
2476<style id='rs-plugin-settings-inline-css' type='text/css'>
2477#rs-demo-id {}
2478</style>
2479<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/e-book-special-elements//js/special-elements.js?ver=1709650098" id="special-element-scripts-js"></script>
vendor: 1 bytes, line 2479
2479
2480<script type="text/javascript" id="prio1-contextmatch-light-2-search-js-extra">
2481/* <![CDATA[ */
2482var Prio1ContextMatchLight2Config = {"dataPath":"https:\/\/golfpiste.com\/wp-content\/plugins\/prio1contextmatchlight2\/data\/","pluginPath":"https:\/\/golfpiste.com\/wp-content\/plugins\/prio1contextmatchlight2\/"};
2483/* ]]> */
2484</script>
vendor: 1 bytes, line 2484
2484
2485<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/prio1contextmatchlight2/Prio1ContextMatchLight2.js?v=1763541623" id="prio1-contextmatch-light-2-search-js"></script>
vendor: 1 bytes, line 2485
2485
2486<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/revslider/public/assets/js/rbtools.min.js?ver=6.6.20" defer async id="tp-tools-js"></script>
vendor: 1 bytes, line 2486
2486
2487<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/revslider/public/assets/js/rs6.min.js?ver=6.6.20" defer async id="revmin-js"></script>
vendor: 1 bytes, line 2487
2487
2488<script type="text/javascript" id="ppress-frontend-script-js-extra">
2489/* <![CDATA[ */
2490var pp_ajax_form = {"ajaxurl":"https:\/\/golfpiste.com\/wp-admin\/admin-ajax.php","confirm_delete":"Are you sure?","deleting_text":"Deleting...","deleting_error":"An error occurred. Please try again.","nonce":"fd3f808030","disable_ajax_form":"false","is_checkout":"0","is_checkout_tax_enabled":"0"};
2491/* ]]> */
2492</script>
vendor: 1 bytes, line 2492
2492
2493<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/wp-user-avatar/assets/js/frontend.min.js?ver=4.14.2" id="ppress-frontend-script-js"></script>
vendor: 1 bytes, line 2493
2493
2494<script type="text/javascript" id="tve-dash-frontend-js-extra">
2495/* <![CDATA[ */
2496var tve_dash_front = {"ajaxurl":"https:\/\/golfpiste.com\/wp-admin\/admin-ajax.php","force_ajax_send":"1","is_crawler":"","recaptcha":[],"post_id":"1426612"};
2497/* ]]> */
2498</script>
vendor: 1 bytes, line 2498
2498
2499<script type="text/javascript" src="https://golfpiste.com/wp-content/plugins/thrive-quiz-builder/thrive-dashboard/js/dist/frontend.min.js?ver=3.40.1" id="tve-dash-frontend-js"></script>
vendor: 1 bytes, line 2499
2499
2500<script type="text/javascript">var tcb_current_post_lists=JSON.parse('[]'); var tcb_post_lists=tcb_post_lists?[...tcb_post_lists,...tcb_current_post_lists]:tcb_current_post_lists;</script>
2500<script src="https://golfpiste.com/wp-content/themes/golfpiste/assets/js/image-load.js?v=5"></script>
vendor: 1 bytes, line 2500
2500
2501<script>
2502    elemCount = elemCount + 0;
2503</script>
2503
2504
2505<script>
2506    function login_register_events() {
2507        (function(d, w, e) {
2508            var bts = d.getElementsByClassName("login-btn-init");
2509            for(var i=0;i<bts.length;i++) {
2510                var b = bts.item(i);
2511                b.onclick = function(evt) {
2512                    var el = evt.currentTarget;
2513                    e.initEvent("initLoginFrame", true, false);
2514                    if(el.hasAttribute("data-open-window")) e.openNewWindow = el.getAttribute("data-open-window");
2515                    else e.openNewWindow = "";
2516                    if(el.hasAttribute("data-open-uri")) e.openUri = el.getAttribute("data-open-uri");
2517                    if(el.hasAttribute("data-values")) e.customValues = el.getAttribute("data-values");
2518                    if( el.hasAttribute("data-execute-func") ) e.openFunc = el.getAttribute("data-execute-func");
2519                    if(el.hasAttribute("data-logout") && b.getAttribute("data-logout") == "1") e.logUserOut = true;
2520                    evt.preventDefault();w.dispatchEvent(e);document.body.style.overflow = "hidden";
2521                }
2522            }
2523        })(document, window, document.createEvent('Event'));
2524    }
2525    login_register_events();
2526</script>
2526
2527
2528<script>
2529    function getUrlParam(par, def){
2530        if(window.location.href.indexOf(par) > -1) return getUrlVars()[par]; return def;
2531    }
2532
2533    function chechUrlParam(par){
2534        if(window.location.href.indexOf(par) > -1) return true; return false;
2535    }
2536
2537    /*
2538    if (!noTakeover) {
2539        if (chechUrlParam("ruututesti")) document.body.classList.add("takeover");
2540    }
2541    */
2542
2543    generateElements();
2544
2545</script>
2545
2546
2547<script>
2548    console.log("SESSION: ", {"last_known_url":"https:\/\/golfpiste.com\/plus-info\/"});
2549</script>
2549
2550
2551
2552
2553
2554<script type="text/javascript">
2555
2556    function resetCustomSelects() {
2557        var elements = document.getElementsByClassName("gp-form-custom-select");
2558
2559        for(var i = 0; i < elements.length; i++) {
2560            var el = elements.item(i);
2561            el.querySelectorAll("input[type='radio']").forEach(function(child) {
2562                child.checked = false;
2563            });
2564
2565        }
2566    }
2567
2568    function wildcardMatch(glob, input) {
2569        var matcher = glob
2570            .replace(/\*/g, '.*')
2571            .replace(/\?/g, '.'); // Replace wild cards with regular expression equivalents
2572        var regex = new RegExp("^" + matcher + "$"); // Match beginning and end of input using ^ and $
2573        return regex.test(input);
2574    }
2575
2576    // Poistetaan turha kolumni tilaussivulta
2577    var customerDetailEl = document.getElementById("customer_details");
2578    if(customerDetailEl != null) customerDetailEl.classList.remove("col2-set");
2579
2580    // Jos on ei ole käytössäoleva etu, muokkaa napin teksti
2581    var kayta_etu_napit = document.getElementsByClassName("button-main--disabled");
2582    for(var i = 0; i < kayta_etu_napit.length; i++) {
2583        var nappi = kayta_etu_napit.item(i);
2584
2585        nappi.innerHTML = "Etu käytetty";
2586        nappi.style.width = "115px";
2587    }
2588
2589    document.addEventListener("DOMContentLoaded", function(e) {
2590
2591        // Wooc
2592
2593        jQuery("#place_order").html("SIIRRY MAKSAMAAN");
2594        jQuery(".wc_payment_methods").hide();
2595
2596                        jQuery("td.product-name").html("Golfpiste Plus -jäsenyys " + new Date().getFullYear());
2597                
2598        var mainFields = document.getElementsByClassName("jasenyys-main-field");
2599
2600        if(mainFields.length >= 1) {
2601            var woocommerce_checkout_fields = document.querySelectorAll('.woocommerce-billing-fields__field-wrapper > p:not(.jasenyys-main-field):not(#billing_state_field)');
2602            woocommerce_checkout_fields.forEach(function(element) {
2603                element.style.display = "none";
2604            });
2605
2606            var mainField = mainFields.item(0);
2607
2608            mainField.addEventListener("input", function(e) {
2609                e.preventDefault();
2610                var format = getMainFieldFormat();
2611                var shouldShowFields = false;
2612                var givenValue = e.target.value;
2613
2614                if(format.length >= 1) {
2615                    if(wildcardMatch(format, e.target.value)) shouldShowFields = true;
2616                } else {
2617                    shouldShowFields = true;
2618                }
2619
2620                if(shouldShowFields === true ) {
2621                    woocommerce_checkout_fields.forEach(function(element) {
2622                        element.style.display = "inline-table";
2623                        if(element.classList.contains("gp-default-hidden-field")) {
2624                            element.style.display = "none";
2625                            element.querySelectorAll("input").forEach(function (el) { el.value = "" });
2626                        }
2627                    });
2628                    resetCustomSelects();
2629                } else {
2630                    woocommerce_checkout_fields.forEach(function(element) {
2631                        element.style.display = "none";
2632                    });
2633                }
2634
2635                console.log(shouldShowFields);
2636            });
2637        }
2638
2639        //var giftPurchaseField = document.getElementById("is_buying_for_gift_field");
2640        var isPersonalInput = document.getElementById("is_buying_for_gift_buy_for_self");
2641
2642        // Oletuksena ostetaan itselleen
2643        isPersonalInput.checked = true;
2644
2645        /* function toggleGiftVisibility() {
2646
2647			 var isForGiftInput = document.getElementById("is_buying_for_gift_buy_for_gift");
2648			 var isPersonalInput = document.getElementById("is_buying_for_gift_buy_for_self");
2649
2650			 var giftedIdentifierField = document.getElementById("gifted_user_id_field");
2651
2652			 // Lahja
2653			 if(isForGiftInput.checked === true && isPersonalInput.checked === false) {
2654				 giftedIdentifierField.style.display = "table";
2655			 }
2656			 // Henkilökohtainen
2657			 else if(isForGiftInput.checked === false && isPersonalInput.checked === true) {
2658				 giftedIdentifierField.style.display = "none";
2659			 }
2660			 // Joku muu, asetetaan oletusarvo
2661			 else { isPersonalInput.checked = true; }
2662
2663		 }
2664
2665		 giftPurchaseField.addEventListener("change", function(e) { toggleGiftVisibility(); }); */
2666        document.addEventListener("updated_checkout", function(e) {
2667            //toggleGiftVisibility();
2668            toggleCompanyVisibility();
2669            toggleShippingVisibility();
2670        });
2671        //toggleGiftVisibility();
2672
2673        var isPersonalBuyer = document.getElementById("is_company_buyer_is_person");
2674        var isCompanyField = document.getElementById("is_company_buyer_field");
2675        isPersonalBuyer.checked = true;
2676
2677        function toggleCompanyVisibility() {
2678            var isCompanyBuyer  = document.getElementById("is_company_buyer_is_company");
2679            var isPersonalBuyer = document.getElementById("is_company_buyer_is_person");
2680            var alvNumberField  = document.getElementById("alv-number_field");
2681            var companyNumberField  = document.getElementById("company-number_field");
2682
2683            // Yritysasiakas
2684            if(isCompanyBuyer.checked === true && isPersonalBuyer.checked === false) {
2685                alvNumberField.style.display = "inline-block";
2686                companyNumberField.style.display = "inline-block";
2687            }
2688            // Henkilöasiakas
2689            else if(isCompanyBuyer.checked === false && isPersonalBuyer.checked === true) {
2690                alvNumberField.style.display = "none";
2691                companyNumberField.style.display = "none";
2692            }
2693            // Joku muu, asetetaan oletusarvo
2694            else { isPersonalBuyer.checked = true; }
2695        }
2696
2697        isCompanyField.addEventListener("change", function(e) { toggleCompanyVisibility(); });
2698        toggleCompanyVisibility();
2699
2700        var hasShippingField = document.getElementById("needs_shipping_address_field");
2701        var doesntHaveShippingAddress = document.getElementById("needs_shipping_address_no");
2702        doesntHaveShippingAddress.checked = true;
2703
2704        function toggleShippingVisibility() {
2705            var hasShippingAddress = document.getElementById("needs_shipping_address_yes");
2706            var doesntHaveShippingAddress = document.getElementById("needs_shipping_address_no");
2707
2708            var addressField  = document.getElementById("shipping_address_field");
2709            var cityField  = document.getElementById("shipping_city_field");
2710            var postalCodeField  = document.getElementById("shipping_postal_code_field");
2711            var otherField  = document.getElementById("shipping_other_field");
2712
2713            // Laskutusosoite eri, kuin toimitus
2714            if(hasShippingAddress.checked === true && doesntHaveShippingAddress.checked === false) {
2715                addressField.style.display = "table";
2716                cityField.style.display = "table";
2717                postalCodeField.style.display = "table";
2718                otherField.style.display = "table";
2719            }
2720            // Laskutusosoite sama, kuin toimitus
2721            else if(hasShippingAddress.checked === false && doesntHaveShippingAddress.checked === true) {
2722                addressField.style.display = "none";
2723                cityField.style.display = "none";
2724                postalCodeField.style.display = "none";
2725                otherField.style.display = "none";
2726            }
2727            // Joku muu, asetetaan oletusarvo
2728            else { doesntHaveShippingAddress.checked = true; }
2729        }
2730
2731        hasShippingField.addEventListener("change", function(e) { toggleShippingVisibility(); });
2732        toggleShippingVisibility();
2733
2734    });
2735
2736</script>
2736
2737
2738
2739<!-- Body end tag start, do not remove -->
2740
2741<!-- // golfpiste.com -->
2742
2743<script>
2744
2745	//const mastersDeadline = new Date(2026, 3, 13, 0, 0, 0);
2746	//if (window.innerWidth >= 996) {
2747	//	if (Date.now() < mastersDeadline.getTime()) {
2748	//		/* Masters */
2749	//		var wtd = window.document;
2750	//		var contentWidth = 1352;
2751	//		var marginTop = 59;
2752	//		wtd.body.style.setProperty('background-image', 'url(https://otavab2bcdn.azureedge.net/content/Ruutu_Masters_Golfpiste_tausta_1920x1140_2026_4.jpg)', 'important');
2753	//		wtd.body.style.setProperty('background-position', '50% 59px', 'important');
2754	//		wtd.body.style.setProperty('background-repeat', 'no-repeat', 'important');
2755	//		wtd.body.style.setProperty('background-attachment', 'fixed', 'important');
2756	//		wtd.body.style.setProperty('background-size', 'cover', 'important');
2757	//		//wtd.getElementById("content-wrapper").style.setProperty('background-color', '#fff', 'important');
2758	//		//wtd.getElementsByClassName("content-wrapper")[0].style.setProperty('background-color', '#fff', 'important');
2759	//		var bgClickUrl = 'http://pubads.g.doubleclick.net/gampad/clk?id=7273298868&iu=/135812570/tracking/click-tracking'
2760	//		var omWp = window.document.getElementsByTagName('body')[0];
2761	//		omWp.insertAdjacentHTML('afterbegin', '<div id="om-wp-container"><a target="_blank" href="' + bgClickUrl + '" id="om-wp-left-wrapper" style="margin-top: ' + marginTop + 'px; height: calc(100% - ' + marginTop + 'px); overflow: hidden; width: calc((100% - ' + contentWidth + 'px) / 2); position: fixed; left: 0px"><div id="om-wp-layer-left" style="display: block; width: 100%; height: 100%;" width="100%" height="100%"></div></a><a target="_blank" href="' + bgClickUrl + '" id="om-wp-right-wrapper" style="margin-top: ' + marginTop + 'px; height: calc(100% - ' + marginTop + 'px);  overflow: hidden; width: calc((100% - ' + contentWidth + 'px) / 2); position: fixed; right: 0px"><div id="om-wp-layer-right" style="display: block; width: 100%; height: 100%;" width="100%" height="100%"></div></a>');
2762	//		/* End of Masters */
2763	//	}
2764	//}
2765
2766	var testLiveScoringAd = location.href.indexOf('?testlivescoring=1') > -1 ? true : false;
2767
2768	// Temp fixes 22.12.2025 15.56.08
2769	jQuery('i.fa-twitter-square').closest('div').remove();
2770	jQuery('a[href="http://www.mediakortit.fi/mediakortit/golflehti/986/#schedules"]').remove();
2771	jQuery('a[href="https://yrityksille.otavamedia.fi/brandit/golflehti/"]').text('Golfpiste mediakortti');
2772	jQuery('a[href="https://yrityksille.otavamedia.fi/brandit/golflehti/"]').attr('href','https://yrityksille.otavamedia.fi/brandit/golfpiste/');
2773	jQuery('span.footer-link:contains("Painettu lehti")').remove();
2774	jQuery('span.footer-link:contains("Avoinna ma�pe 8�17")').remove();
2775	jQuery('a[href="mailto:[email protected]"]').remove();
2776	jQuery('a[href="https://www.lukusali.fi/?p=Golflehti"]').closest('li').remove();
2777	jQuery('a[href="mailto:[email protected]"]').remove();
2778	jQuery('a.footer-link:contains("Lähetä palautetta")').remove();
2779	jQuery('a.footer-otavamedia-logo').attr('href','https://otavamedia.fi');
2780	if (location.href.includes('/ota-yhteytta/')) {
2781		jQuery('#ad-wrapper-div-desk-1').closest('section').remove();
2782		jQuery('#ad-wrapper-div-mob-1').closest('section').remove();
2783		jQuery('#section-2').remove();
2784		jQuery('#section-3').remove();
2785		jQuery('#section-4').remove();
2786		jQuery('#section-5').remove();
2787	}
2788	jQuery('.twitter.share-icon').remove();
2789	jQuery('ul#menu-paavalikko2 > li > a:contains("Teetime")').closest('li').remove()
2790	//	if (testLiveScoringAd) {
2791		jQuery('.livescoring-bar > .livescoring__logo').remove();
2792		jQuery('.livescoring-bar > .livescoring__heading').css('text-align','unset').css('margin','10px');
2793		jQuery('.livescoring > .section-wrapper > .livescoring__content > .has-bg').remove();
2794	//}
2795	jQuery('#livescoring-small > .livescoring-header > .partner-logo').remove();
2796	jQuery('#livescoring-small > .livescoring-content > .livescoring-small-ad').remove();
2797	jQuery('#livescoring-small > .livescoring-header > h3').attr('style', 'margin: 0 0 0 20px !important;');
2798
2799	if (location.href.includes('/teetime/')) {
2800		jQuery('img[src="https://imagepiste.com/wp-content/uploads/teetime/audi.svg"]').parent().parent().remove();
2801		jQuery('[data-type="OLVI"]').remove();
2802		jQuery('img[src="/wp-content/themes/golfpiste/assets/img/nexgolf.png"]').siblings('p').filter(':contains("ja")').remove();
2803		jQuery('img[src="/wp-content/themes/golfpiste/assets/img/nexgolf.png"]').remove();
2804	}
2805
2806	jQuery('#footer > .footer-wrapper > .column-1').append('<a href="https://otavamedia.fi/avoimuusraportit/" class="footer-link" target="_blank">DSA avoimuusraportti</a>');
2807	jQuery('#menu-item-1285101 > a').removeAttr('href'); //Kilpailut & tapahtumat linkki
2808	// Temp fixes end
2809
2810	// Ad changes bc Google 30.7.2026
2811	if (jQuery('body').is('.home')) {
2812		jQuery('.section-wrapper.home-article-wrapper').append(jQuery('#main-articles-load-desktop'));
2813		jQuery('#main-articles-load-desktop > a > span, #main-articles-load-mobile > a > span').html('Lue lisää uutisia');
2814		jQuery('#main-articles-load-desktop').remove(); // 26.08.2026
2815		jQuery('section.read-more-articles .section-wrapper').append(jQuery('.read-more-articles .load-more-button'));
2816		jQuery('section.read-more-articles .load-more-button > a > span').html('Lue lisää uutisia');
2817		jQuery('.read-more-articles .load-more-button').remove(); // 26.08.2026
2818
2819		jQuery('section.marketplace-latest .section-wrapper').append(jQuery('section.marketplace-latest .load-more-button'));
2820		jQuery('section.marketplace-latest .load-more-button').remove(); // 26.08.2026
2821		jQuery('section.section-clubnews .section-wrapper').append(jQuery('section.section-clubnews .load-more-button'));
2822		jQuery('section.section-clubnews .load-more-button').remove(); // 26.08.2026
2823		jQuery('section.travel-packets .section-wrapper').append(jQuery('section.travel-packets .load-more-button'));
2824		jQuery('section.travel-packets .load-more-button').remove(); // 26.08.2026
2825		jQuery('section#section-5 .section-wrapper').append(jQuery('section#section-5 .load-more-button'));
2826		jQuery('section#section-5 .load-more-button').remove(); // 26.08.2026
2827		//jQuery('#travel-guides-carousel-section').remove(); // 04.09.2026
2828		//jQuery('.travel-packets').remove(); // 04.09.2026
2829
2830		if (window.innerWidth < 997) {
2831			waitForElement("#mob-1-wrapper").then(function(element) {
2832				jQuery('#section-2').before(jQuery('#mob-1-wrapper'));
2833				jQuery('#mob-1-wrapper').after('<div class="livescoring-wrapper"></div>');
2834				jQuery('.livescoring-wrapper').append(jQuery('.livescoring__mobile'));
2835				//jQuery('.livescoring-wrapper').append(jQuery('#gp-podcast-element'));
2836				jQuery('#main-articles-load-mobile').remove();
2837			});
2838			jQuery('body.home .main-articles__right > div').eq(1).replaceWith(jQuery('body.home #read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2839			jQuery('body.home .main-articles__right > div').eq(1).children().eq(0).insertAfter(jQuery('body.home .main-articles__right > div').eq(1).children().eq(1));
2840			//jQuery('#gp-podcast-element').before(jQuery('section#section-1'));
2841		} else {
2842			//jQuery('.main-articles__right > div').eq(1).replaceWith(jQuery('#read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2843			//jQuery('.main-articles__right > div').eq(1).children().eq(0).insertAfter(jQuery('.main-articles__right > div').eq(1).children().eq(1));
2844			//jQuery('.main-articles__right > div#gp-podcast-element').replaceWith(jQuery('#read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2845			//jQuery('.main-articles__right > div').eq(3).children().eq(0).insertAfter(jQuery('.main-articles__right > div').eq(3).children().eq(1));
2846			//jQuery('#ad-wrapper-div-desk-1').closest('section').before(jQuery('body.home .livescoring__desktop'));
2847		}
2848		if (window.innerWidth > 650) {
2849			jQuery('section#section-5 #bbpress-forums').removeClass('has-ad-right');
2850			jQuery('section#section-5 .section--ad__rectangle').remove();
2851
2852			jQuery('section.marketplace-latest > .section-wrapper > div.has-ad-right').removeClass('has-ad-right').css('width','100%');
2853			jQuery('.marketplace-latest .section--ad__rectangle').remove();
2854		}
2855
2856	}
2857	if (jQuery('body').is('.single-post')) {
2858		jQuery('div.intervention--ad').remove();
2859		jQuery('div.intervention--ad--separator').remove();
2860		jQuery('div.ad-separatator').remove();
2861		if (window.innerWidth > 996) {
2862			jQuery('body.single-post #prio1feedback-popular-articles').after(jQuery('#ad-wrapper-div-rectangle-2').closest('section'));
2863		}
2864	}
2865	jQuery('section#section-1 .livescoring__arrow').remove();
2866	jQuery('section#section-1 .livescoring__content').css('display','block');
2867	jQuery('section#section-2 .livescoring__arrow').remove();
2868	jQuery('section#section-2 .livescoring__content').css('display','block');
2869
2870	document.addEventListener('DOMContentLoaded', () => {
2871
2872		jQuery('.travel-packets button').remove(); // 02.09.2026
2873		jQuery('.travel-guides-carousel button').remove(); // 02.09.2026
2874
2875		var readMoreArticlesList = jQuery('<div id="read-more-articles-list" class="read-more-articles-list"></div>');
2876		jQuery('.read-more-articles .flickity-slider .carousel-cell').each(function() {
2877			readMoreArticlesList.append(jQuery('<div class="read-more-articles-item"></div>').html(jQuery(this).html()));
2878			// $newArticleItem.find('.has-bg--no-text').removeClass('has-bg--no-text');
2879		});
2880		//console.log('readMoreArticlesList: ' + readMoreArticlesList.length);
2881
2882		var secondNativeAdPlace = window.innerWidth <= 650 ? 3 : 7;
2883		var nbrOfItemsToRemoveFromEndOfList = jQuery('body').hasClass('home') ? -3 : -2;
2884		var nativeAdPlace1 = window.innerWidth <= 650 ? 1 : 2;
2885		var nativeAdPlace2 = window.innerWidth <= 650 ? 5 : 4;
2886
2887		// Convert items into a real JavaScript Array to safely reorder them
2888		var readMoreArticlesListItemsArray = readMoreArticlesList.children('.read-more-articles-item').get();
2889		var readMoreArticlesListItemsArrayLength = readMoreArticlesListItemsArray.length;
2890
2891		if (readMoreArticlesListItemsArrayLength >= 8) {
2892
2893			// Delete the 2nd item (native ad) from the modified list
2894			readMoreArticlesListItemsArray.splice(1, 1);
2895			if (jQuery('body').hasClass('home')) {
2896				// Delete the last 1 items from the array
2897				readMoreArticlesListItemsArray.splice(-1);
2898			} else {
2899				var sectionIdImageList = 'imageList' + jQuery('.read-more-articles').attr('id').match(/\d+/)[0];
2900				// Move the last item to the very beginning of the array
2901				readMoreArticlesListItemsArray.unshift(readMoreArticlesListItemsArray.pop());
2902				window[sectionIdImageList].unshift(window[sectionIdImageList].pop());
2903				//readMoreArticlesListItemsArray.splice(-2);
2904				readMoreArticlesListItemsArray.splice(-2);
2905			}
2906
2907			jQuery('.read-more-articles .section-wrapper > .carousel').remove();
2908			// Empty the list in memory and re-append items in the correct order
2909			readMoreArticlesList.empty().append(readMoreArticlesListItemsArray);
2910
2911		}
2912
2913		jQuery('.read-more-articles .section-wrapper').prepend(readMoreArticlesList);
2914
2915		if (!jQuery('body').hasClass('home')) {
2916			jQuery('.read-more-articles .read-more-articles-list .read-more-articles-item').eq(nativeAdPlace1).after('<div class="read-more-articles-item"><div id="gp-native-2_1" style="width: 100%;"></div></div>');
2917			jQuery('.read-more-articles .read-more-articles-list .read-more-articles-item').eq(nativeAdPlace2).after('<div class="read-more-articles-item"><div id="gp-native-2_2" style="width: 100%;"></div></div>');
2918		} else {
2919			if (location.href.indexOf('?testnative') >= -1) {
2920				jQuery('.read-more-articles .read-more-articles-list .read-more-articles-item').eq(nativeAdPlace1).after('<div class="read-more-articles-item"><div id="gp-native-2_1" style="width: 100%;"></div></div>');
2921				jQuery('.read-more-articles .read-more-articles-list .read-more-articles-item').eq(nativeAdPlace2).after('<div class="read-more-articles-item"><div id="gp-native-2_2" style="width: 100%;"></div></div>');
2922			}
2923			if (window.innerWidth > 996) {
2924				if (location.href.indexOf('?testnative') >= -1) {
2925					jQuery('.main-articles__right > div').eq(1).replaceWith(jQuery('#read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2926					jQuery('.main-articles__right > div').eq(1).children().eq(0).insertAfter(jQuery('.main-articles__right > div').eq(1).children().eq(1));
2927					//jQuery('.main-articles__right > div#gp-podcast-element').replaceWith(jQuery('#read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2928					//jQuery('.main-articles__right > div').eq(3).children().eq(0).insertAfter(jQuery('.main-articles__right > div').eq(3).children().eq(1));
2929				}
2930			} else {
2931				jQuery('.main-articles__right > div').eq(1).replaceWith(jQuery('#read-more-articles-list > div').eq(0).removeClass('read-more-articles-item'));
2932				if (window.innerWidth < 651) {
2933					jQuery('.main-articles__right > div').eq(1).children().eq(0).insertAfter(jQuery('.main-articles__right > div').eq(1).children().eq(1));
2934				}
2935			}
2936		}
2937
2938	});
2939	// Ad changes bc Google 30.7.2026 end
2940
2941
2942	async function waitForVariable2(variableName, timeoutMs = 30000, intervalMs = 1000) {
2943		const startTime = Date.now();
2944		for (; !window[variableName]; ) {
2945			if (Date.now() - startTime >= timeoutMs) {
2946				console.warn(`waitForVariable2: Timeout of ${timeoutMs / 1000}s reached for variable "${variableName}".`);
2947				return false;
2948			}
2949			await new Promise(resolve => setTimeout(resolve, intervalMs));
2950		}
2951		return true;
2952	}
2953
2954	if (testyett) {
2955
2956		const now = new Date();
2957		now.setTime(now.getTime() + (60 * 60 * 1000));
2958		document.cookie = "testyett=1; expires=" + now.toUTCString() + "; path=/";
2959
2960
2961		waitForElement(".bb_iawr").then(function(element) {
2962			console.log('.bb_iawr detected...');
2963			jQuery(".bb_iawr").remove();
2964		});
2965
2966		waitForElement("#golfpiste-video-container").then(function(element) {
2967			console.log('#golfpiste-video-container detected...');
2968			//jQuery("#golfpiste-video-container").remove();
2969		});
2970
2971		waitForVariable('bluebillywig').then(function () {
2972			console.log('bluebillywig detected...');
2973		});
2974
2975		// Check for purposes 3 and 4, which are most relevant for social media and advertising.
2976		// NOTE: TCF 2.2 requires CONSENT for these purposes.
2977		// const REQUIRED_PURPOSES = [1, 3, 4, 5, 6];
2978
2979		const iframeBlacklist = ['Facebook', 'Imgur', 'Infogram', 'Instagram', 'Qualifio', 'Reddit', 'Screen9', 'Soundcloud', 'Spotify', 'Thinglink', 'Tiktok', 'Twitter', 'Vimeo', 'Youtube'];
2980		const blockquoteRegex = /(twitter-tweet|infogram-embed|instagram-media|tiktok-embed|imgur-embed-pub)/;
2981		const scriptBlacklist = ['bbvms.com'];
2982
2983		let contentElement = 'body';
2984
2985		const formatDomainName = (domainIdentifier) => {
2986			console.log('domain: ' + domainIdentifier);
2987			const baseDomain = domainIdentifier.includes('-') ? domainIdentifier.split('-')[0] : domainIdentifier;
2988			return baseDomain.charAt(0).toUpperCase() + baseDomain.slice(1);
2989		};
2990
2991		const blockedDivTemplate = (domainName, suffix = '-upotus') => {
2992			let fullSuffix = suffix;
2993			if (suffix !== '' && suffix.charAt(0) !== '-') {
2994				fullSuffix = '-' + suffix;
2995			}
2996			return `
2997				<div class="yett_iframe-blocked">
2998					<h3>Sisältöä ei voida näyttää</h3>
2999					<p><b>${domainName}</b>${fullSuffix} on estetty, koska et ole hyväksynyt evästeitä.</p>
3000					<a href="javascript:gravitoCMP.openPreferences();">Muokkaa evästeasetuksia</a>
3001				</div>
3002			`;
3003		};
3004
3005
3006		const isTrackingAllowed = (tcfAllowUseCookies === true);
3007
3008		if (!isTrackingAllowed) {
3009
3010			// 1. Block IFRAMEs
3011			jQuery(contentElement + ' iframe').each(function(){
3012				const iframeSrc = jQuery(this).attr('src') || jQuery(this).attr('data-src');
3013				if (iframeSrc) {
3014					const blacklistedDomain = iframeBlacklist.find(v => iframeSrc.includes(v.toLowerCase()));
3015					if (blacklistedDomain) {
3016						jQuery(this).before(blockedDivTemplate(formatDomainName(blacklistedDomain)));
3017						jQuery(this).attr('data-src-blocked', jQuery(this).attr('src') || jQuery(this).attr('data-src'));
3018						jQuery(this).removeAttr('src').removeAttr('data-src');
3019						jQuery(this).addClass('yett_hidden-wrapper');
3020					}
3021				}
3022			});
3023
3024			// 2. Block SCRIPTS
3025			jQuery(contentElement + ' script').each(function(){
3026				const scriptSrc = jQuery(this).attr('src');
3027				if (scriptSrc) {console.log('scriptSrc:' + scriptSrc)}
3028				if (scriptSrc) {
3029					const blacklistedDomain = scriptBlacklist.find(v => scriptSrc.toLowerCase().includes(v.toLowerCase()));
3030					if (blacklistedDomain) {
3031						let domainName = 'Videosisältö';
3032						jQuery(this).before(blockedDivTemplate(formatDomainName(domainName), ''));
3033						jQuery(this).attr('data-src-blocked', scriptSrc);
3034						jQuery(this).removeAttr('src');
3035						jQuery(this).addClass('yett_hidden-wrapper');
3036						jQuery(this).closest('.bb_iawr').remove();
3037						console.log(blacklistedDomain + ' blocked...');
3038					}
3039				}
3040			});
3041
3042			// 3. Block BLOCKQUOTEs (social media widgets)
3043			jQuery(contentElement + ' blockquote').each(function(){
3044				const bqClassAttribute = jQuery(this).attr('class');
3045				const matchedDomainArray = bqClassAttribute && bqClassAttribute.match(blockquoteRegex);
3046				if (matchedDomainArray) {
3047					jQuery(this).before(blockedDivTemplate(formatDomainName(matchedDomainArray[1])));
3048					jQuery(this).addClass('yett_hidden-wrapper');
3049				}
3050			});
3051
3052		}
3053
3054
3055		document.addEventListener('gravito:tcfv2:client', function (event) {
3056
3057			let cmpEventType = event.detail.eventType;
3058
3059			if (cmpEventType === 'cmpui:closed' || cmpEventType === 'layer1:opt-in:all') {
3060
3061				// CHECK FOR CONSENT on the REQUIRED_PURPOSES (e.g., 3 and 4)
3062				const purposeConsents = event.detail.purposeConsents || [];
3063				console.log('purposeConsents: ' + purposeConsents);
3064
3065				// Check if ALL required purposes (3 and 4) are present in the granted consents
3066				const hasRequiredConsent = EMBEDS_REQUIRED_PURPOSES.every(
3067					purpose => purposeConsents.includes(purpose)
3068				);
3069				console.log('hasRequiredConsent: ' + hasRequiredConsent);
3070
3071				if (hasRequiredConsent) {
3072
3073					// 1. Remove placeholders and hidden classes
3074					jQuery(contentElement + ' .yett_iframe-blocked').remove();
3075					jQuery(contentElement + ' .yett_hidden-wrapper').removeClass('yett_hidden-wrapper');
3076
3077					// 2. Restore IFRAME sources
3078					jQuery(contentElement + ' iframe').each(function(){
3079						const $iframe = jQuery(this);
3080						const blockedSrc = $iframe.attr('data-src-blocked');
3081
3082						if (blockedSrc) {
3083							$iframe.attr('src', blockedSrc);
3084							$iframe.attr('data-src', blockedSrc);
3085							$iframe.removeAttr('data-src-blocked');
3086						}
3087					});
3088
3089					jQuery(contentElement + ' script').each(function(){
3090						const blockedSrc = jQuery(this).attr('data-src-blocked');
3091						if (blockedSrc) {
3092							const newScript = document.createElement('script');
3093							newScript.src = blockedSrc;
3094							if (jQuery(this).attr('id')) newScript.id = jQuery(this).attr('id');
3095							if (jQuery(this).attr('type')) newScript.type = jQuery(this).attr('type');
3096							jQuery(this).replaceWith(newScript);
3097						}
3098					});
3099
3100					// 3. Unblock the window
3101					window.yett.unblock();
3102				}
3103			}
3104		}, true);
3105
3106	}
3107
3108	async function loadReadpeakAd(origAdSlotId, targetSelector, method = 'replaceWith') {
3109		const slotNumber = origAdSlotId.match(/(\d+)$/)?.[1];
3110		if (!slotNumber) return;
3111
3112		//const adUnit = `rpAd_${slotNumber}`;
3113		const adUnit = `rpAd_${origAdSlotId}`;
3114
3115		try {
3116			const response = await fetch("https://app.readpeak.com/ads/get/?l=75a421ab9d134ca0&j=1&gdpr_consent=" + tcString);
3117
3118			if (!response.ok || response.status === 204) {
3119				if (dfpDebug) {console.log('NATIVE: Rp empty, did not replace "' + origAdSlotId + '" with rp...')}
3120				//jQuery('#' + origAdSlotId).parent('li').css('display','none');
3121				return;
3122			}
3123			const data = await response.json();
3124
3125			if (!data || data.length === 0) return;
3126
3127			const ad = data[0];
3128
3129			const $adElement = jQuery(`
3130				<style>
3131					#${adUnit} {
3132						background-color: #005f90;
3133						font-family: arial, sans-serif, open-sans;
3134						font-size: 12px;
3135						margin: 0px;
3136						padding: 0px;
3137						width: 100%;
3138						/*height: 100%;*/
3139						/*overflow: hidden;*/
3140						/*position: relative;*/
3141						/*max-width: 320px !important;*/
3142						container-type: inline-size;
3143						container-name: ${adUnit};
3144					}
3145					@container ${adUnit} (width >= 0px) {
3146						.rpAdContentWrapper {
3147							position: relative;
3148							height: 100%;
3149							width: 100%;
3150							text-align: left;
3151						}
3152						.attribution {
3153							background-color: #FFF;
3154							border-radius: 2px;
3155							box-shadow: 0px 1px 2px rgba(0,0,0,.5);
3156							font-size: 14px;
3157							left: 4px;
3158							padding-left: 3px;
3159							padding-right: 3px;
3160							position: absolute;
3161							top: 4px;
3162							z-index: 10;
3163							display: none;
3164						}
3165						.title {
3166							padding-bottom: 8px;
3167							padding-left: 10px;
3168							padding-right: 8px;
3169							padding-top: 4px;
3170						}
3171						.title a {
3172							color: #fff;
3173							font-size: 16px;
3174							font-weight: 400;
3175							text-decoration: none;
3176						}
3177						.image .image-link {
3178							height: 100%;
3179							width: 100%;
3180						}
3181						.advertiser {
3182							padding: 8px 0px 0px 8px;
3183							display: block;
3184						}
3185						.advertiser a {
3186							color: #fff;
3187							font-weight: 700;
3188							text-transform: uppercase;
3189							font-size: 12px;
3190							letter-spacing: .2px;
3191							text-decoration: none;
3192							background-color: #000;
3193							padding: 4px
3194						}
3195					}
3196					@container ${adUnit} ((width <= 289px) or (301px <= width < 324px)) {
3197						.image {
3198							display: flex;
3199							width: 100%;
3200							padding-top: 66.66%;
3201							position: relative;
3202							height: 0;
3203							overflow:hidden;
3204						}
3205						.image img {
3206							width: 100%;
3207							height: 100%;
3208							position: absolute;
3209							top: 0;
3210							object-fit: cover;
3211						}
3212					}
3213					@container ${adUnit} ((290px <= width <= 300px) or (width >= 324px)) {
3214						.image {
3215							float: left;
3216							margin-right: 8px;
3217							width: 30%;
3218							overflow: hidden;
3219							padding-top: 110px;
3220							position: relative;
3221						}
3222						.image img {
3223							width: 180px;
3224							width: 100%;
3225							height: 100%;
3226							position: absolute;
3227							top: 0;
3228							object-fit: cover;
3229						}
3230						.advertiser {
3231							padding-top: 8px;
3232							text-align: left;
3233						}
3234						.title {
3235							padding: 6px 0px 6px 2px;
3236							text-align: left;
3237						}
3238						.title a {
3239							font-size: 15px
3240						}
3241					}
3242				</style>
3243				<div id='${adUnit}' class='rpAd'>
3244					<div class='rpAdContentWrapper'>
3245						<div class='attribution'>Mainos</div>
3246						<div class='image'>
3247							<a class='image-link' href='${ad.target}' target='_blank'><img src='${ad.image}'></a>
3248						</div>
3249						<div class='advertiser'>
3250							<a class='advertiser-link' href='${ad.target}' target='_blank'>MAINOS | ${ad.advertiser}</a>
3251						</div>
3252						<div class='title'>
3253							<a class='title-link' href='${ad.target}' target='_blank'>${ad.title}</a>
3254						</div>
3255					</div>
3256				</div>
3257			`);
3258
3259
3260			jQuery(targetSelector)[method]($adElement);
3261
3262			if (ad.beacons && ad.beacons.length > 0) {
3263				new IntersectionObserver((entries, observer) => {
3264					entries.forEach(entry => {
3265						if (entry.isIntersecting) {
3266							new Image(1, 1).src = ad.beacons[0];
3267							observer.unobserve(entry.target);
3268							console.log('Rp visible, calling inscreen tracking: ', ad.beacons[0]);
3269						}
3270					});
3271				}, { threshold: 1.0 }).observe($adElement.filter(`#${adUnit}`)[0]);
3272			}
3273
3274		} catch (error) {
3275			console.error("Could not fetch Readpeak ad:", error);
3276		}
3277
3278	// End of async function loadReadpeakAd(origAdSlotId, targetSelector, method = 'replaceWith') {
3279	}
3280
3281</script>
3281
3282
3283<script type="text/javascript">
3284
3285	(function(e,t,o,n,p,r,i){e.visitorGlobalObjectAlias=n;e[e.visitorGlobalObjectAlias]=e[e.visitorGlobalObjectAlias]||function(){(e[e.visitorGlobalObjectAlias].q=e[e.visitorGlobalObjectAlias].q||[]).push(arguments)};e[e.visitorGlobalObjectAlias].l=(new Date).getTime();r=t.createElement("script");r.src=o;r.async=true;i=t.getElementsByTagName("script")[0];i.parentNode.insertBefore(r,i)})(window,document,"https://diffuser-cdn.app-us1.com/diffuser/diffuser.js","vgo");
3286	vgo('setAccount', '90999994');
3287	vgo('setTrackByDefault', true);
3288	vgo('process');
3289
3290</script>
3290
3291
3292<script>
3293
3294	jQuery('#ad-wrapper-div-mob-4').parent('section.section--ad').remove();
3295	jQuery('#ad-wrapper-div-rectangle-3').parent('section.section--ad').remove();
3296
3297	if (
3298		location.href.indexOf('/mainos/') == -1 &&
3299		location.href.indexOf('/business-aamu-kutsu/') == -1 &&
3300		location.href.indexOf('/matkailu/tuntureiden-keskella-jokien-varrella-pohjoisen-kentilla-kiire-katoaa/') == -1 &&
3301		location.href.indexOf('/matkailu/toisille-irtiotto-toisille-pelireissu-ahvenamaa-toimii-yhta-hyvin-molempiin/') == -1 &&
3302		location.href.indexOf('/valineet/miksi-lyhyet-putit-menevat-ohi-ping-lahestyy-ongelmaa-uudesta-kulmasta/') == -1
3303	) {
3304
3305		// avaussivu poistettu 03.08.2026 11.20.16
3306		// avaussivu palautettu 07.09.2026 07.22.19
3307
3308		var adSlotInterstitial;
3309		window.googletag = window.googletag || {cmd: []};
3310
3311		googletag.cmd.push(function() {
3312			//adSlotInterstitial = googletag.defineOutOfPageSlot('/135812570/golfpiste/content/interstitial', 'dfp__interstitial').addService(googletag.pubads());
3313			adSlotInterstitial = googletag.defineSlot('/135812570/golfpiste/content/interstitial', [1, 1], 'dfp__interstitial').addService(googletag.pubads());
3314		});
3315
3316		var interstitialAdUnit = '<div id=\"dfp__interstitial\">
3316<script>googletag.cmd.push(function() {googletag.display(\'dfp__interstitial\')})<\/script></div>';
3317		document.body.insertAdjacentHTML('afterbegin', interstitialAdUnit);
3318		console.log('Interstitial added...');
3319
3320		if (location.href.indexOf('webinterstitial') >= -1) {
3321			waitForVariable2("canRunWebInterstitial", 30000, 1000)
3322			.then((success) => {
3323				if (success) {
3324					if (dfpDebug) {console.log('Defining webinterstitial...')}
3325					var webinterstitialSlot;
3326					googletag.cmd.push(function() {
3327						webinterstitialSlot = googletag.defineOutOfPageSlot('/135812570/golfpiste/content/webinterstitial', googletag.enums.OutOfPageFormat.INTERSTITIAL);
3328						if (webinterstitialSlot) {webinterstitialSlot.addService(googletag.pubads()); googletag.pubads().refresh([webinterstitialSlot], {changeCorrelator: false});}
3329					});
3330				} else {
3331					if (dfpDebug) { console.log('waitForVariable2 "canRunWebInterstitial" timed out or variable was not found.'); }
3332				}
3333			})
3334			.catch(error => {
3335				if (dfpDebug) { console.error('Error in waitForVariable2:', error); }
3336			});
3337		}
3338
3339		if (location.href.includes('?testtopad') && !location.href.includes('/kenttaopas-maailma/') && !location.href.includes('/kenttaopas-kentta/')) {
3340			if (window.innerWidth <= 768) {
3341				var adSlotTopadMob;
3342				googletag.cmd.push(function() {
3343					adSlotTopadMob = googletag.defineSlot('/135812570/golfpiste/content/topad-mob', [[1, 2], [2, 2]], 'dfp__topad-mob').addService(googletag.pubads());
3344				});
3345				var topadMobAdUnit = '<div id=\"dfp__topad-mob\">
3345<script>googletag.cmd.push(function() {googletag.display(\'dfp__topad-mob\')})<\/script></div>';
3346				document.body.insertAdjacentHTML('afterbegin', topadMobAdUnit);
3347			} else {
3348				var adSlotTopadDesk;
3349				googletag.cmd.push(function() {
3350					adSlotTopadDesk = googletag.defineSlot('/135812570/golfpiste/content/topad-desk', [[1, 2], [2, 2]], 'dfp__topad-desk').addService(googletag.pubads());
3351				});
3352				var topadDeskAdUnit = '<div id=\"dfp__topad-desk\">
3352<script>googletag.cmd.push(function() {googletag.display(\'dfp__topad-desk\')})<\/script></div>';
3353				document.body.insertAdjacentHTML('afterbegin', topadDeskAdUnit);
3354			}
3355		}
3356
3357		if (testLiveScoringAd && !location.href.match(/\/plus-info\/|\/tilaa-jasenyys\/|\/jasenyys-ota-yhteytta\/|\/jasenyys-saannot\/|\/plus\//)) {
3358
3359			var adSlotLivescoring1_1;
3360			var targetElementLivescoring1_1;
3361			if (window.innerWidth <= 996) {
3362				targetElementLivescoring1_1 = document.querySelector('.livescoring__mobile .livescoring__content');
3363				if (targetElementLivescoring1_1) {
3364					toggleLivescoringMobile();
3365				}
3366			} else {
3367				targetElementLivescoring1_1 = document.querySelector('.livescoring__desktop .livescoring__content');
3368				if (targetElementLivescoring1_1) {
3369					toggleLivescoring();
3370				}
3371			}
3372			if (targetElementLivescoring1_1) {
3373				googletag.cmd.push(function() {
3374					if (window.innerWidth <= 996) {
3375						adSlotLivescoring1_1 = googletag.defineSlot('/135812570/golfpiste/livescoring/livescoring-1', [[300, 250], [300, 300], [300, 431], [300, 600]], 'dfp__livescoring-1_1').addService(googletag.pubads()).setTargeting('adslotid', 'livescoring-1_1');
3376					} else {
3377						adSlotLivescoring1_1 = googletag.defineSlot('/135812570/golfpiste/livescoring/livescoring-1', [[300, 250], [300, 300]], 'dfp__livescoring-1_1').addService(googletag.pubads()).setTargeting('adslotid', 'livescoring-1_1');
3378					}
3379				});
3380				var livescoringAdUnit1_1 = '<div id=\"dfp__livescoring-1_1\">
3380<script>googletag.cmd.push(function() {googletag.display(\'dfp__livescoring-1_1\')})<\/script></div>';
3381				if (window.innerWidth <= 996) {
3382					//targetElementLivescoring1_1.insertAdjacentHTML('beforeend', livescoringAdUnit1_1);
3383					targetElementLivescoring1_1.insertAdjacentHTML('afterbegin', livescoringAdUnit1_1);
3384				} else {
3385					targetElementLivescoring1_1.insertAdjacentHTML('afterbegin', livescoringAdUnit1_1);
3386				}
3387			}
3388
3389			var adSlotLivescoring1_2;
3390			var targetElementLivescoring1_2 = document.querySelector('#livescoring-small > .livescoring-header');
3391
3392			if (targetElementLivescoring1_2) {
3393				googletag.cmd.push(function() {
3394					adSlotLivescoring1_2 = googletag.defineSlot('/135812570/golfpiste/livescoring/livescoring-1', [[300, 250], [300, 300]], 'dfp__livescoring-1_2').addService(googletag.pubads()).setTargeting('adslotid', 'livescoring-1_2');
3395				});
3396				var livescoringAdUnit1_2 = '<div id=\"dfp__livescoring-1_2\">
3396<script>googletag.cmd.push(function() {googletag.display(\'dfp__livescoring-1_2\')})<\/script></div>';
3397				targetElementLivescoring1_2.insertAdjacentHTML('afterend', livescoringAdUnit1_2);
3398			}
3399
3400		}
3401
3402	}
3403
3404	var dfpReady = setInterval(function() {
3405
3406		if(window.googletag && googletag.pubadsReady) {
3407
3408			//console.timeEnd("dfpIsReady");
3409			console.log('DFP is ready...');
3410			//googletag.pubads().disableInitialLoad();
3411
3412			jQuery(document).ready(function() {
3413
3414				if (jQuery('body').hasClass('single-post') && jQuery('body').hasClass('post-template-template-golfpiste-seuraa')) {
3415
3416					var adUnit1, adUnit2, adUnit3;
3417					if (window.innerWidth < 1366) {
3418						adUnit1 = 'div-mob-1';
3419						adUnit2 = 'ad-wrapper-div-mob-2';
3420						adUnit3 = 'div-mob-3';
3421						jQuery('#ad-wrapper-div-mob-3').parent('section.section--ad__mob').remove()
3422					} else {
3423						adUnit1 = 'div-desk-1';
3424						adUnit2 = 'ad-wrapper-div-desk-2';
3425						adUnit3 = 'div-desk-3';
3426					}
3427					jQuery('.article-content > .entry-title').after('<div id=\"' + adUnit1 + '\" class=\"ad-container\" style=\"margin-bottom: 0px; text-align: center;\">
3427<script>googletag.cmd.push(function() {googletag.display(\"' + adUnit1 + '\")});<\/script><\/div>');
3428					if (jQuery('.article-content #article-updates-content > div').length > 1) {
3429						jQuery('.article-content #article-updates-content > div').eq(0).after(jQuery('#' + adUnit2 + '').css({"margin":"35px 0px", "padding-bottom":"35px", "border-bottom":"1px solid #707070", "text-align":"center"}));
3430					}
3431					if (jQuery('.article-content #article-updates-content > div').length > 4) {
3432						jQuery('.article-content #article-updates-content > div').eq(3).after('<div id=\"' + adUnit3 + '\" class=\"ad-container\" style=\"margin: 35px 0px; padding-bottom: 35px; border-bottom: 1px solid #707070; text-align: center\">
3432<script>googletag.cmd.push(function() {googletag.display(\"' + adUnit3 + '\")});<\/script><\/div>');
3433					}
3434					if (window.innerWidth >= 1366) {
3435						jQuery('#div-desk-1').css({'margin-left':'-30px','margin-right':'-50px'});
3436						jQuery('#div-desk-2').css({'margin-left':'-30px','margin-right':'-50px'});
3437						jQuery('#div-desk-3').css({'margin-left':'-30px','margin-right':'-50px'});
3438					}
3439
3440				}
3441
3442				if (window.innerWidth < 997) {
3443
3444					if (location.href.indexOf('testextraad=1') > -1) {
3445
3446						if (jQuery("body").hasClass("single-post")) {
3447							var adSlotMob1TopExtra;
3448							googletag.cmd.push(function() {
3449								adSlotMob1TopExtra = googletag.defineSlot('/135812570/golfpiste/content/mob-1', [[300,250],[300,300],[300,431],[300, 600]], 'dfp__mob-1_2').addService(googletag.pubads());
3450							});
3451							var topadMobAdUnit = '<div id=\"dfp__mob-1_2\">
3451<script>googletag.cmd.push(function() {googletag.display(\'dfp__mob-1_2\')})<\/script></div>';
3452							document.body.insertAdjacentHTML('afterbegin', topadMobAdUnit);
3453						}
3454
3455					}
3456
3457					if (jQuery("body").hasClass("home")) {
3458
3459						//waitForElement("#ad-wrapper-div-mob-1").then(function(element) {
3460						//	jQuery("#ad-wrapper-div-mob-1").after(interstitialAdUnit);
3461						//});
3462
3463						//jQuery('#gp-podcast-element').closest('section').after(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3464						//jQuery('.section-teetime').after(jQuery('.kenttaranking-ad').closest('a'));
3465
3466						if (testLiveScoringAd) {
3467							jQuery('section.main-articles > div > div').eq(0).before('<div id="mob-1-wrapper" style="min-height: 300px; width: 100%; margin: 20px 0px"></div>');
3468							jQuery('.main-articles__left').after(jQuery('.main-articles__center').css('margin-top','15px'));
3469						} else {
3470							jQuery('section.main-articles > div > div').eq(0).after('<div id="mob-1-wrapper" style="min-height: 300px; width: 100%; margin: 20px 0px"></div>');
3471						}
3472						//jQuery('#mob-1-wrapper').append(jQuery('#ad-wrapper-div-mob-1').closest('section').css('margin-bottom','0px'));
3473						jQuery('#mob-1-wrapper').append(jQuery('#ad-wrapper-div-mob-1').closest('section'));
3474						if (window.innerWidth <= 650) {
3475							jQuery('.golfpiste-seuraa').css('margin-bottom', '0px');
3476						}
3477
3478						jQuery('section.read-more-articles').after(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3479
3480						//jQuery('section.main-articles > .section-wrapper > .main-articles__right').before(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3481						//jQuery('#ad-wrapper-div-mob-2').closest('section').wrap('<div style="border-top: 1px solid lightgrey; text-align: center; width: calc(100% - 16px); margin: 0px 8px"></div>');
3482
3483						//jQuery('section.section-teetime').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3484
3485						// Seurauutisten nosto
3486						jQuery('.marketplace-latest').after(jQuery('section.section-clubnews'));
3487
3488						// Matkapakettien nosto talveksi
3489						//jQuery('.read-more-articles').before(jQuery('.travel-packets'))
3490						jQuery('.read-more-articles').after(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3491
3492						//jQuery('#ad-wrapper-div-mob-2').closest('section').remove();
3493						jQuery('#ad-wrapper-div-mob-3').closest('section').remove();
3494
3495						// Poistetaan teetime talveksi
3496						jQuery('section.section-teetime').remove();
3497
3498
3499
3500						//jQuery('.read-more-articles').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3501
3502					} else {
3503						//if (location.href.indexOf('/mainos/') == -1) {
3504						//	top.document.body.insertAdjacentHTML('afterbegin', interstitialAdUnit);
3505						//}
3506					}
3507
3508					if (jQuery("body").hasClass("single-post")) {
3509
3510						testnewsads2: if (location.href.indexOf('testnewads=2') > -1 || cmpGetCookie('testnewads') == 2) {
3511
3512							console.log('Testing new ad setup =2...');
3513							jQuery('#ad-wrapper-div-mob-1').closest('section').remove();
3514							jQuery('#ad-wrapper-div-mob-2').closest('section').remove();
3515							jQuery('#ad-wrapper-div-mob-3').closest('section').remove();
3516
3517							//break testnewsads2;
3518
3519							var adScript = document.createElement('script');
3520							adScript.src = 'https://as.otavamedia.fi/js/iiaa.js';
3521							//adScript.src = 'https://otavab2bcdn.azureedge.net/content/js/iiaa.js';
3522							adScript.onload = function() {
3523								console.log('Ad insertion script loaded');
3524								AdInsertion.insertInArticleAds(document.body, {
3525									debug: true,
3526									useTestAds: false,
3527									fallbackToParagraph: true,
3528									maxAdsCount: 10,
3529									minParagraphsMobile: 3,
3530									minParagraphsDesktop: 8,
3531									sectionHeightMultiplier: null, //2.5, // Extra ads in long sections
3532									headingsModeRequirement: 50,
3533									contentWrapperSelector: '.article-content',
3534									desktopAdUnits: ['desk-1', 'bbwad', 'desk-2'],
3535									mobileAdUnits: ['mob-1', 'mob-2', 'bbwad', 'mob-2', 'mob-3'],
3536									firstDesktopAdIndex: 3,
3537									firstMobileAdIndex: 1,
3538									videoScriptUrl: '//otavamedia.bbvms.com/a/golfpiste.js',
3539									useFloatCloseButton: true,
3540									floatCloseButtonText: 'Sulje mainos',
3541									bottomAdPosition: 'after' // after = default
3542								});
3543							};
3544							adScript.onerror = function() {
3545								console.error('Failed to load iiaa script...');
3546							};
3547							document.head.appendChild(adScript);
3548
3549
3550						} else {
3551
3552							//setTimeout(() => {
3553							//	jQuery('div.intervention--ad').remove();
3554							//	jQuery('div.intervention--ad--separator').remove();
3555							//	jQuery('div.ad-separatator').remove();
3556							//}, 1000);
3557
3558							var nbrOfParagraphs = jQuery('.article-content > p').length;
3559
3560							waitForElement("#ad-wrapper-div-mob-2").then(function(element) {
3561								//jQuery('#read-more-heading').before(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3562								//jQuery('.article-content > #prio1feedback').before(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3563								if (jQuery('.article-content > h2').length > 1) {
3564									jQuery('.article-content > h2').eq(0).before(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3565									jQuery('#ad-wrapper-div-mob-2').before('<div style="margin-bottom: 15px !important; " class="ad-separatator"><span>Artikkeli jatkuu mainoksen j&auml;lkeen</span></div>');
3566									jQuery('#ad-wrapper-div-mob-2').after('<div style="margin-top: 10px;" class="ad-separatator"><span>Artikkeli jatkuu</span></div>');
3567									if (jQuery('.article-content > #videomainos').length > 0) {
3568										//jQuery('#videomainos').replaceWith(jQuery('#ad-wrapper-div-mob-3').parent('section.section--ad__mob'));
3569										jQuery('#videomainos').append(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3570										jQuery('#ad-wrapper-div-mob-3').closest('section').replaceWith(jQuery('#ad-wrapper-div-mob-3').closest('section').contents());
3571										jQuery('#ad-wrapper-div-mob-3').css("text-align","center");
3572									}
3573								} else {
3574									if (jQuery('.article-content > #videomainos').length > 0 && nbrOfParagraphs >= 8) {
3575										jQuery('#videomainos').append(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3576										jQuery('#ad-wrapper-div-mob-2').closest('section').replaceWith(jQuery('#ad-wrapper-div-mob-2').closest('section').contents());
3577										jQuery('#ad-wrapper-div-mob-2').css("text-align","center");
3578										//jQuery('#read-more-heading').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3579										jQuery('.article-content > #prio1feedback').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3580									} else {
3581										jQuery('.article-content > #prio1feedback').before(jQuery('#ad-wrapper-div-mob-2').closest('section'));
3582										jQuery('#read-more-heading').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3583									}
3584								}
3585								// Kress campaign 11.08.2026
3586								if (location.href.indexOf('/suomen-pelatyin-puu/missa-kasvaa-suomen-pelatyin-puu-kerro-meille-golfkentan-pahin-kierroksenpilaaja/') > -1 ||
3587									location.href.indexOf('/suomen-pelatyin-puu/suomen-pelatyin-puu-ehdokas-1-auran-tammet/') > -1) {
3588									waitForElement("#div-mob-3").then(function(element) {
3589										console.log('Removing closest section of #div-mob-3...');
3590										console.log('#div-mob-3 length: ' + jQuery('#div-mob-3').length);
3591										jQuery('#div-mob-3').closest('section.section--ad').remove();
3592									});
3593								}
3594							});
3595
3596							//jQuery('body.single-post .livescoring__mobile').after('<div id="gp-native-1" style="width: 100%;"></div>');
3597
3598							if (location.href.indexOf('?testcallaway=1') >= -1) {
3599
3600								// Outstream removed 14.08.2026 13.45.32
3601								if (location.href.indexOf('?testoutstream=1') > -1) {
3602									var outstreamPlace = Math.round(nbrOfParagraphs/2, 0);
3603									jQuery('.article-content > p').eq(outstreamPlace).after('<div id="bbwvideo">
3603<script type=\"text/javascript\" src=\"https://otavamedia.bbvms.com/a/golfpiste.js\" async=\"true\"><\/script><\/div>');
3604								}
3605
3606								//waitForElement("#bb-iawr-inarticle-golfpiste").then(function(element) {
3607								//	//var outstreamCounter = 0;
3608								//	//var outstreamReady = setInterval(function() {
3609								//	jQuery("#bb-iawr-inarticle-golfpiste").wrap('<div class=\"bb-iawr-parent\"></div>');
3610								//	jQuery(".bb-iawr-parent").prepend('<div class=\"bb-iawr-header\"><div class=\"bb-iawr-logo\"></div><div class=\"bb-iawr-attribution\">Mainos</div><\/div>');
3611								//	document.addEventListener("scroll", function onScroll(event) {
3612								//		//console.log('First scroll detected!');
3613								//		setTimeout(() => {
3614								//			if (document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") != 15) {
3615								//				console.log('bb-wr duration is ' + document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") + ' seconds...');
3616								//				jQuery('.bb-iawr-header').css('display','none');
3617								//				jQuery('.bb-iawr-header').remove();
3618								//				jQuery('.bb-iawr-parent').contents().unwrap();
3619								//				console.log('Removing special header from outstream...');
3620								//		//		clearInterval(outstreamReady);
3621								//			} else if (document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") == null) {
3622								//				console.log('bb-wr duration is null...');
3623								//			} else {
3624								//				console.log('bb-wr duration is ' + document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") + ' seconds...');
3625								//			}
3626								//		}, 2000);
3627								//		document.removeEventListener("scroll", onScroll);
3628								//	});
3629								//
3630								//});
3631
3632							}
3633
3634							// Advantage wrapper
3635							if (useAdvantage) {
3636								jQuery('[id^="div-mob"]').wrap('<advantage-wrapper allowed-formats="MIDSCROLL,DOUBLE_MIDSCROLL"><div slot="advantage-ad-slot"></div></advantage-wrapper>');
3637							}
3638
3639						}
3640
3641					}
3642
3643				} else {
3644
3645					if (jQuery("body").hasClass("home")) {
3646
3647						// Poistetaan teetime talveksi
3648						jQuery('section.section-teetime').remove();
3649
3650						// Seurauutisten nosto
3651						jQuery('.travel-packets').before(jQuery('section.section-clubnews'));
3652
3653						//waitForElement("#ad-wrapper-div-desk-1").then(function(element) {
3654						//	jQuery("#ad-wrapper-div-desk-1").after(interstitialAdUnit);
3655						//});
3656
3657						//jQuery('.read-more-articles').before(jQuery('#ad-wrapper-div-desk-2').closest('section'));
3658						//jQuery('section.section--webstore').before(jQuery('#ad-wrapper-div-desk-2').closest('section'));
3659						jQuery('.marketplace-latest').before(jQuery('#ad-wrapper-div-desk-2').closest('section'));
3660
3661						//jQuery('.section-clubnews').after(jQuery('#ad-wrapper-div-desk-3').closest('section'));
3662						//jQuery('.read-more-articles').before(jQuery('#ad-wrapper-div-desk-3').closest('section'));
3663						//jQuery('#ad-wrapper-div-desk-2').closest('section').remove();
3664						jQuery('#ad-wrapper-div-desk-3').closest('section').remove();
3665
3666						jQuery('.travel-packets').before(jQuery('#section-5'));
3667						//jQuery('#travel-guides-carousel-section').before(jQuery('#section-5'));
3668
3669						if (location.href.indexOf('?testi=readmore') >= -1) {
3670							//jQuery('section.section-teetime').after(jQuery('section.read-more-articles'));
3671						}
3672
3673					} else {
3674						//if (location.href.indexOf('/mainos/') == -1) {
3675						//	top.document.body.insertAdjacentHTML('afterbegin', interstitialAdUnit);
3676						//}
3677					}
3678
3679					if (jQuery("body").hasClass("single-post")) {
3680
3681						//setTimeout(() => {
3682						//	jQuery('div.intervention--ad').remove();
3683						//	jQuery('div.intervention--ad--separator').remove();
3684						//	jQuery('div.ad-separatator').remove();
3685						//}, 1000);
3686
3687						var nbrOfParagraphs = jQuery('.article-content > p').length;
3688
3689						waitForElement("#ad-wrapper-div-desk-2").then(function(element) {
3690							var nbrOfH2 = jQuery('.article-content > h2').length;
3691							if (nbrOfH2 > 1) {
3692								var desk2AdPlace = 0;
3693								if (nbrOfH2 > 2) {
3694									desk2AdPlace = parseInt(nbrOfH2/2);
3695								}
3696								jQuery('.article-content > h2').eq(desk2AdPlace).before(jQuery('#ad-wrapper-div-desk-2').closest('section'));
3697								jQuery('#ad-wrapper-div-desk-2').before('<div style="margin-bottom: 15px !important; " class="ad-separatator"><span>Artikkeli jatkuu mainoksen j&auml;lkeen</span></div>');
3698								jQuery('#ad-wrapper-div-desk-2').after('<div style="margin-top: 10px;" class="ad-separatator"><span>Artikkeli jatkuu</span></div>');
3699								if (jQuery('.article-content > #videomainos').length > 0) {
3700									jQuery('#videomainos').append('<section class="section--ad section--ad__panorama" style="margin-top: 0px; margin-bottom: 0px"><div id="div-desk-3" class="ad-wrapper">
3700<script>googletag.cmd.push(function() {googletag.display("div-desk-3")});<\/script></div></section>');
3701								}
3702							} else {
3703								if (jQuery('.article-content > #videomainos').length > 0 && nbrOfParagraphs >= 8) {
3704
3705									jQuery('#videomainos').prev('div.intervention--ad').insertBefore(jQuery('#videomainos').prev('div.intervention--ad').prev('p'));
3706									jQuery('#videomainos').next('div.intervention--ad').insertBefore(jQuery('#videomainos').prev('p'));
3707									jQuery('#videomainos').insertBefore(jQuery('#videomainos').prev('p').prev('div.intervention--ad'));
3708
3709									jQuery('#videomainos').append(jQuery('#ad-wrapper-div-desk-2').closest('section')).prev('.intervention--ad').css('margin','50px 0px 0px');
3710									jQuery('#videomainos').next('.intervention--ad').css('margin','0px 0px 50px');
3711									jQuery('#ad-wrapper-div-desk-2').closest('section').css({'margin-top':'0px','margin-bottom':'0px'});
3712									//jQuery('#ad-wrapper-div-desk-2').closest('section').replaceWith(jQuery('#ad-wrapper-div-desk-2').closest('section').contents());
3713									//jQuery('#ad-wrapper-div-desk-2').css("text-align","center");
3714									//jQuery('#read-more-heading').before(jQuery('#ad-wrapper-div-mob-3').closest('section'));
3715									jQuery('.article-content > #prio1feedback').before('<section class="section--ad section--ad__panorama"><div id="ad-wrapper-div-desk-3" class="ad-wrapper"><div id="div-desk-3" class="ad-wrapper">
3715<script>googletag.cmd.push(function() {googletag.display("div-desk-3")});<\/script></div></div></section>');
3716									console.log('Testi1...');
3717								} else {
3718									jQuery('.article-content > #prio1feedback').before(jQuery('#ad-wrapper-div-desk-2').closest('section'));
3719									jQuery('#read-more-heading').before('<section class="section--ad section--ad__panorama"><div id="ad-wrapper-div-desk-3" class="ad-wrapper"><div id="div-desk-3" class="ad-wrapper">
3719<script>googletag.cmd.push(function() {googletag.display("div-desk-3")});<\/script></div></div></section>');
3720									console.log('Testi2...');
3721								}
3722
3723								// Kress campaign 11.08.2026
3724								if (location.href.indexOf('/suomen-pelatyin-puu/missa-kasvaa-suomen-pelatyin-puu-kerro-meille-golfkentan-pahin-kierroksenpilaaja/') > -1 ||
3725									location.href.indexOf('/suomen-pelatyin-puu/suomen-pelatyin-puu-ehdokas-1-auran-tammet/') > -1) {
3726									console.log('Removing closest section of #div-rectangle-2...');
3727									jQuery('#div-rectangle-2').closest('section.section--ad').remove();
3728									waitForElement("#div-desk-3").then(function(element) {
3729										console.log('Removing closest section of #div-desk-3...');
3730										console.log('#div-desk-3 length: ' + jQuery('#div-desk-3').length);
3731										jQuery('#div-desk-3').closest('section.section--ad').remove();
3732									});
3733								}
3734
3735							}
3736						});
3737
3738						// Removed 15.09.2026 12.14.16
3739						//jQuery('body.single-post .section--ad__rectangle').has('#ad-wrapper-div-rectangle-2').before('<div id="gp-native-1" style="width: 100%;"></div>');
3740
3741						if (location.href.indexOf('?testcallaway=1') >= -1) {
3742
3743							//jQuery('.article-content > p').eq(4).after('
3743<script type=\"text/javascript\" src=\"https://otavamedia.bbvms.com/p/golfpiste_instream/c/5914216.js\" async=\"true\"><\/script>');
3744							//waitForElement(".bb_iawr").then(function(element) {
3745							//	jQuery(".bb_iawr").wrap('<div class=\"bb-iawr-parent\"></div>');
3746							//	jQuery(".bb-iawr-parent").prepend('<div class=\"bb-iawr-header\"><div class=\"bb-iawr-logo\"></div><div class=\"bb-iawr-attribution\">Mainos</div><\/div>');
3747							//});
3748
3749							//var outstreamPlace = Math.round(nbrOfParagraphs/2, 0);
3750							//jQuery('.article-content > p').eq(outstreamPlace).after('
3750<script type=\"text/javascript\" src=\"https://otavamedia.bbvms.com/a/golfpiste.js\" async=\"true\"><\/script>');
3751
3752							//waitForElement("#bb-iawr-inarticle-golfpiste").then(function(element) {
3753							//	//var outstreamCounter = 0;
3754							//	//var outstreamReady = setInterval(function() {
3755							//	jQuery("#bb-iawr-inarticle-golfpiste").wrap('<div class=\"bb-iawr-parent\"></div>');
3756							//	jQuery(".bb-iawr-parent").prepend('<div class=\"bb-iawr-header\"><div class=\"bb-iawr-logo\"></div><div class=\"bb-iawr-attribution\">Mainos</div><\/div>');
3757							//	document.addEventListener("scroll", function onScroll(event) {
3758							//		//console.log('First scroll detected!');
3759							//		setTimeout(() => {
3760							//			if (document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") != 15) {
3761							//				console.log('bb-wr duration is ' + document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") + ' seconds...');
3762							//				jQuery('.bb-iawr-header').css('display','none');
3763							//				jQuery('.bb-iawr-header').remove();
3764							//				jQuery('.bb-iawr-parent').contents().unwrap();
3765							//				console.log('Removing special header from outstream...');
3766							//		//		clearInterval(outstreamReady);
3767							//			} else if (document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") == null) {
3768							//				console.log('bb-wr duration is null...');
3769							//			} else {
3770							//				console.log('bb-wr duration is ' + document.querySelector("#bb-wr-inarticle-golfpiste").getAttribute("data-duration") + ' seconds...');
3771							//			}
3772							//		}, 2000);
3773							//		document.removeEventListener("scroll", onScroll);
3774							//	});
3775
3776							//	//	outstreamCounter++;
3777							//	//	if (outstreamCounter == 10) {
3778							//	//		clearInterval(outstreamReady);
3779							//	//	}
3780							//	//}, 1000);
3781							//});
3782
3783						}
3784
3785					}
3786
3787					setTimeout(function(){
3788						jQuery("body").append('<iframe srcdoc=\"\
3788<script src=\'https:\/\/cdn.performax.cz\/acc\/loader.js?aab=loader\'\>\<\/script\>\" style=\"display: none\" data-web=\"golfpiste.com\" data-hash=\"4edf163a3c6725e2f2c2ea5d2afed80f\"><\/iframe>');
3789					}, 10);
3790
3791				}
3792
3793			});
3794
3795			clearInterval(dfpReady);
3796
3797		} else {
3798			//console.log('Checking Again if DFP ready...');
3799		}
3800
3801	}, 20);
3802
3803	(function(d,s,e,t){e=d.createElement(s);e.type='text/java'+s;e.async='async';
3804	e.src='http'+('https:'===location.protocol?'s://':'://')+'functions.adnami.io/api/macro/adsm.macro.golfpiste.com.js';
3805	t=d.getElementsByTagName(s)[0];t.parentNode.insertBefore(e,t);})(document,'script');
3806
3807	var adsmtag = adsmtag || {};
3808	adsmtag.cmd = adsmtag.cmd || [];
3809
3810	if (location.href.indexOf('testi=123') >= -1) {
3811		if ((location.pathname == '/' || location.pathname == '/porssi/') && tcstring_decoded != '') {
3812			if(tcstring_decoded.purpose.consents['1']) {
3813				//var vendorData = JSON.parse(decodeURIComponent(cmpGetCookie('gravitoData'))).NonTCFVendors;
3814				//for (var vendor of vendorData) {
3815				//	if (vendor.name == 'Hotjar') {
3816				//		if (vendor.consent) {
3817
3818							console.log('Hotjar implemented...');
3819							<!-- Hotjar Tracking Code for https://golfpiste.com -->
vendor: 131 bytes, lines 3819-3822
3819
3820							(function(h,o,t,j,a,r){
3821								h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
3822								h._hjSettings={hjid:
3822462782
vendor: 276 bytes, lines 3822-3829
3822,hjsv:6};
3823								a=o.getElementsByTagName('head')[0];
3824								r=o.createElement('script');r.async=1;
3825								r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
3826								a.appendChild(r);
3827							})(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
3828
3829							
3829console.log('Clarity implemented...');
3830							(function(c,l,a,r,i,t,y){
3831								c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
3832								t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
3833								y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
3834							})(window, document, "clarity", "script", "wj5pynfl1j");
3835
3836				//		}
3837				//		break;
3838				//	}
3839				//}
3840			}
3841		}
3842	}
3843
3844	checkCMPConditions(tcstring_decoded, [1], [], [], []).then(result => {
3845		if (result) {
3846
3847			if (dfpDebug) {console.log("Consents met: nsAudience IS GOOD TO GO...")}
3848			(function(d,s,e,t){e=d.createElement(s);e.type='text/java'+s;e.async='async';
3849			e.src='http'+('https:'===location.protocol?'s://':'://')+'atm.api.dmp.nsaudience.pl/atm.js';
3850			t=d.getElementsByTagName(s)[0];t.parentNode.insertBefore(e,t);})(document,'script');
3851
3852			(function(w,a,c) {
3853				if(w[a]) { return }
3854				var s = function() {
3855					var ar = Array.prototype.slice.call(arguments);
3856					return new Promise(function(r,e){s[c].push({a:ar,c:r,e:e})});
3857				}
3858				s[c] = []
3859				w[a] = s
3860			})(window, "__atm", "_calls")
3861
3862		} else {
3863			if (dfpDebug) {console.log("Consents NOT met: CAN NOT USE nsAudience!!!")}
3864		}
3865	});
3866
3867	jQuery('.ad-golfmessut').attr('href', 'https://kauppa.golfpiste.com?utm_source=topbanner&utm_medium=banner&utm_campaign=ad-golfmessut');
3868
3869
3870	checkCMPConditions(tcstring_decoded, [1], [], [], []).then(result => {
3871		if (result) {
3872
3873			if (dfpDebug) {console.log("Consents met: LinkedIn IS GOOD TO GO...")}
3874
3875			_linkedin_partner_id = "8795426";
3876			window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || [];
3877			window._linkedin_data_partner_ids.push(_linkedin_partner_id);
3878
3879			// LinkedIn Insight Tagin latausfunktio
3880			(function(l) {
3881				if (!l) {
3882					window.lintrk = function(a, b) {
3883						window.lintrk.q.push([a, b])
3884					};
3885					window.lintrk.q = [];
3886				}
3887				var s = document.getElementsByTagName("script")[0];
3888				var b = document.createElement("script");
3889				b.type = "text/javascript";
3890				b.async = true;
3891				b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js";
3892				s.parentNode.insertBefore(b, s);
3893			})(window.lintrk);
3894
3895		} else {
3896			if (dfpDebug) {console.log("Consents NOT met: CAN NOT USE LinkedIn!!!")}
3897		}
3898	});
3899
3900
3901
3902
3903
3904
3905	if (location.href.includes('?testnewadsetup')) {
3906
3907
3908		function loadAdSlot(adSlotId) {
3909
3910			googletag.cmd.push(function() {
3911
3912				if (dfpDebug) {console.log('HAS: runHeaderbid: ' + adSlotId + ', ' + (Date.now() - timerStart) + 'ms...')}
3913				observerHeaderbidRun = true;
3914
3915				var adUnit = adSlotId.split('__')[1].split('_')[0];
3916
3917				var hbArticleTags = articleTags != '' ? articleTags.split(',').map(tag => tag.trim()) : [];
3918				var hbArticleCategories = articleCategories != '' ? [...new Set(articleCategory.split(',').concat(articleCategories.split(',')))] : [];
3919
3920				var takeOver = '', adSlotsNotAllowedForHBM = [];
3921				useHBM = true;
3922
3923				if (hbArticleTags.some(tag => tag.includes('grill'))) {
3924					useHBM = false;
3925					takeOver = 'grillikuumaksi';
3926				}
3927				if (['grill'].some(cat => hbArticleCategories.includes(cat))) {
3928					useHBM = false;
3929					takeOver = 'grillikuumaksi';
3930				}
3931				if (articleSection == 'grilli kuumaksi') {
3932					useHBM = false;
3933					takeOver = 'grillikuumaksi';
3934				}
3935
3936				// takeOver disabled 24.06.2026 10.41.11
3937				useHBM = true;
3938
3939				if (!useHBM && takeOver == 'grillikuumaksi') {
3940					adSlotsNotAllowedForHBM = ['mob-1', 'mob-2', 'desk-1', 'desk-2'];
3941					if (dfpDebug) {console.log('HAS: takeOver: ' + takeOver + ', adSlotsNotAllowedForHBM: ' + adSlotsNotAllowedForHBM)}
3942				}
3943
3944				var slotLocation = adLocation;
3945				if (adUnit.includes('native')) {
3946					slotLocation = 'native';
3947				} else if (adUnit.includes('topad') || adUnit.includes('interstitial')) {
3948					slotLocation = 'content';
3949				}
3950
3951				googletag.cmd.push(function() {
3952
3953					googletag.defineSlot('/' + window.dfp.networkcode + '/' + window.dfp.serviceName + '/' + slotLocation + '/' + adUnit, window.dfp.slots[adUnit].sizes, adSlotId)
3954					.addService(googletag.pubads())
3955					.setConfig({
3956						targeting: {
3957							'adslotid': adSlotId.replace('dfp__', ''),
3958							'CxContext': cxContextualIds
3959						}
3960					});
3961					if (dfpDebug) {console.log('Defining slot: /' + window.dfp.networkcode + '/' + window.dfp.serviceName + '/' + slotLocation + '/' + adUnit)}
3962					if (dfpDebug) {console.log('cxContextualIds: ' + cxContextualIds)}
3963
3964				});
3965
3966				if (['native', 'interstitial', 'topad-desk', ...(adSlotsNotAllowedForHBM || [])].some(slot => adUnit.includes(slot)) || (["tad", "lads"].includes(deliveryType) && !useHBM)) {
3967				//if (['native', 'interstitial', 'topad-desk', 'topad-mob', ...(adSlotsNotAllowedForHBM || [])].some(slot => adUnit.includes(slot)) || (["tad", "lads"].includes(deliveryType) && !useHBM)) {
3968
3969					googletag.cmd.push(function() {
3970						const slot = googletag.pubads().getSlots().find(s => s.getSlotElementId() === adSlotId);
3971						if (slot) {
3972							googletag.pubads().refresh([slot], {changeCorrelator: false});
3973						}
3974						if (dfpDebug) {console.log('googletag.pubads().refresh([' + slot.getSlotElementId() + '], {changeCorrelator: false});')}
3975					});
3976
3977				} else {
3978
3979					if (dfpDebug) {
3980						console.log('HAS: Existing slots: ');
3981						googletag.cmd.push(function() {
3982							googletag.pubads().getSlots().forEach((slot) => {
3983								console.log('HAS: ' + slot.getSlotElementId());
3984							});
3985						});
3986					}
3987
3988					window.relevantDigital = window.relevantDigital || {};
3989					relevantDigital.cmd = relevantDigital.cmd || [];
3990					relevantDigital.cmd.push(function() {
3991
3992						relevantDigital.addPrebidConfig({
3993							ortb2: {
3994								site: {
3995									//keywords: contextualIds.join(),
3996									ext: {
3997										data: {
3998											CxContext: Object.values(cxContextualIds),
3999											articleCategories: hbArticleCategories,
4000											articleTags: hbArticleTags
4001										}
4002									}
4003								}
4004							}
4005						});
4006
4007						relevantDigital.loadPrebid({
4008							configId: pbjsConf,
4009							manageAdserver: false, //Manage adserver set to off.
4010							collapseEmptyDivs: true,
4011							collapseBeforeAdFetch: false,
4012							noGpt: true,
4013							allowedDivIds: Array.isArray(adSlotId) ? adSlotId : [adSlotId], // set to an array to only load certain <div>s, example - ["divId1", "divId2"]
4014							noSlotReload: true, // set true to only load ad slots that have never been loaded
4015							googletagCalls: {
4016								refresh: (slots) => googletag.pubads().refresh(slots, { changeCorrelator: false }),
4017							},
4018							onBeforeAuctionSetup: function(params) {
4019								params.auction.adUnits.forEach(function(unit) {
4020									unit.bids.forEach(function(bid){
4021										if (bid.bidder == 'appnexus' || bid.bidder == 'appnexus_s2s_alias') {
4022											bid.params.keywords = {cxSegments: cxSegmentIds, CxContext: cxContextualIds, articleTags: hbArticleTags, articleCategories: hbArticleCategories};
4023											if (dfpDebug) {console.log('Setting params for Xandr bidder...')}
4024										}
4025										//if (bid.bidder == 'adnun') {
4026										//	console.log('adnun...');
4027										//}
4028									})
4029								})
4030							}
4031
4032						});
4033					});
4034
4035				}
4036
4037			});
4038
4039		}
4040
4041		if (window.dfpDebug) {
4042			console.log('HAS: testSRA = true, testing new observer...');
4043		}
4044
4045		const dfpObservers = new Map();
4046		const loadedSlots = new Set();
4047
4048		function observeDfpElements() {
4049
4050			// Filter out elements that have already been marked or whose loading has already started
4051			const targets = [...document.querySelectorAll('[id^="div-desk-1"]:not([data-observed])')].filter(el => el.id !== 'dfp__mob-2_222' && !loadedSlots.has(el.id));
4052
4053			targets.forEach(target => {
4054
4055				target.setAttribute('data-observed', 'true');
4056
4057				let thresholdValue = parseFloat(target.getAttribute('data-threshold')) || 1;
4058				if (target?.getAttribute('id')?.includes('dfp__native')) {
4059					thresholdValue = 0.3;
4060				}
4061				//if (target?.getAttribute('id')?.match(/dfp__mob-[12]/)) {
4062				//	thresholdValue = 1.5;
4063				//}
4064
4065				let dfpObserver = dfpObservers.get(thresholdValue);
4066				if (!dfpObserver) {
4067					if (window.dfpDebug) console.log(`HAS: Creating new observer for threshold: ${thresholdValue}`);
4068					const rootMargin = `${thresholdValue * 100}% 0px ${thresholdValue * 100}% 0px`;
4069
4070					dfpObserver = new IntersectionObserver(
4071						(entries, obs) => {
4072							entries.forEach(entry => {
4073								if (entry.isIntersecting) {
4074									const slotId = entry.target.id;
4075
4076									// LOCKING: Checking if the ad has already started loading
4077									if (!loadedSlots.has(slotId)) {
4078										loadedSlots.add(slotId); // Lock immediately against new requests
4079										obs.unobserve(entry.target);
4080
4081										if (window.dfpDebug) {
4082											console.log('HAS: entry.boundingClientRect.height: ' + entry.boundingClientRect.height);
4083											console.log('HAS: calling runHeaderbid: ' + slotId);
4084											let distanceFromViewportBottom = window.innerHeight - entry.boundingClientRect.top;
4085											console.log(`HAS: ${slotId} is ${distanceFromViewportBottom.toFixed(0)}px from the bottom of viewport...`);
4086										}
4087
4088										loadAdSlot(slotId);
4089									}
4090								}
4091							});
4092						},
4093						{
4094							root: null,
4095							rootMargin: rootMargin,
4096							threshold: 0.0
4097						}
4098					);
4099					dfpObservers.set(thresholdValue, dfpObserver);
4100				}
4101
4102				dfpObserver.observe(target);
4103				if (window.dfpDebug) console.log('HAS: Observing element: ', target.id, 'with threshold:', thresholdValue);
4104			});
4105		}
4106
4107		let debounceDfpTimeout;
4108		function debouncedDfpObserve() {
4109			clearTimeout(debounceDfpTimeout);
4110			debounceDfpTimeout = setTimeout(observeDfpElements, 100);
4111		}
4112
4113		//window.initDfpObservation = function() {
4114		//	if (window.dfpDebug) console.log('enableServices called -> Starting DFP Observation');
4115		//	observeDfpElements();
4116		//	const mutationDfpObserver = new MutationObserver(() => debouncedDfpObserve());
4117		//	mutationDfpObserver.observe(document.body, { childList: true, subtree: true });
4118		//};
4119
4120		// Määritellään Observerin käynnistys
4121		function startObservation() {
4122			if (window.dfpDebug) console.log('DFP Ready signal received -> Starting Observation');
4123			observeDfpElements();
4124			const mutationDfpObserver = new MutationObserver(() => debouncedDfpObserve());
4125			mutationDfpObserver.observe(document.body, { childList: true, subtree: true });
4126		}
4127
4128		// TARKISTUS:
4129		// 1. Jos CMP/DFP ehti jo valmistua <head>-tägissä ennen kuin tämä skripti ladattiin:
4130		if (window.dfpReady) {
4131			startObservation();
4132		} else {
4133			// 2. Jos DFP ei ole vielä valmis, jäädään kuuntelemaan tapahtumaa:
4134			window.addEventListener('dfpReady', startObservation, { once: true });
4135		}
4136
4137
4138	// End of if (location.href.includes('?testnewadsetup')) {
4139	}
4140
4141
4142</script>
4142
4143
4144
4145<style>
4146
4147	@media screen and (min-width: 997px) {
4148		/* fix for Safari, iPad etc. */
4149		.main-articles__right {
4150			width: 30.331%;
4151		}
4152	}
4153
4154	div.bb-iawr-parent {
4155		position: relative;
4156		background-color: #000;
4157	}
4158	div.bb-iawr-parent > .bb-iawr-header {
4159		height: 62px;
4160		background-color: #000;
4161	}
4162	div.bb-iawr-parent > .bb-iawr-header > .bb-iawr-logo {
4163		background: url(https://moongolf.com/wp-content/uploads/2017/03/Callaway-logo-WHITE-1024x591-small.png) 15px 15px no-repeat;
4164		width: 45%;
4165		float: left;
4166		height: 62px;
4167		background-size: 80px;
4168	}
4169	div.bb-iawr-parent > .bb-iawr-header > .bb-iawr-attribution {
4170		width: 45%;
4171		float: right;
4172		color: #fff;
4173		text-align: right;
4174		margin: 18px;
4175		font-family: Arial;
4176		font-size: 24px;
4177	}
4178	@media screen and (max-width: 996px) {
4179		div.bb-iawr-parent > .bb-iawr-header > .bb-iawr-attribution {
4180			font-size: 18px;
4181		}
4182		div.bb-iawr-parent > .bb-iawr-header > .bb-iawr-logo {
4183			height: 52px;
4184			width: 42%;
4185			background: url(https://moongolf.com/wp-content/uploads/2017/03/Callaway-logo-WHITE-1024x591-small.png) 15px 10px no-repeat;
4186			background-size: 60px;
4187		}
4188		div.bb-iawr-parent > .bb-iawr-header {
4189			height: 52px;
4190			margin-bottom: -20px;
4191		}
4192		div.bb-iawr-parent > .bb-iawr-header > .bb-iawr-attribution {
4193			width: 42%;
4194			margin: 15px;
4195		}
4196		.not-full-width .section--ad.section--ad__mob {
4197			/*width: 100vw;*/
4198			margin-left: -8px;
4199		}
4200		#videomainos {
4201			width: 100vw;
4202			margin-left: -8px !important;
4203		}
4204		#videomainos .rpAd {
4205			margin-left: calc((100% - 320px) / 2);
4206		}
4207		#ad-wrapper-div-mob-2_notinuse {
4208			width: 100vw;
4209			margin-left: -8px;
4210		}
4211	}
4212
4213	#bb-iawr-inarticle-golfpiste {
4214		margin: 40px 0 40px !important;
4215	}
4216
4217	@media screen and (min-width: 996px) {
4218		body.topic.bbpress .sidebar {
4219			margin-left: 27px;
4220		}
4221	}
4222
4223	@media screen and (min-width: 450px) {
4224		.livescoring__content .livescoring__column {
4225			width: 32%;
4226		}
4227	}
4228	@media screen and (max-width: 996px) {
4229		#dfp__livescoring-1_1 {
4230			width: 300px;
4231			margin-left: 25px;
4232			margin-top: 10px;
4233		}
4234		#dfp__livescoring-1_1 > * {
4235			width: 100%;
4236			min-width: 100%;
4237		}
4238	}
4239	@media screen and (max-width: 900px) {
4240		#dfp__livescoring-1_2 {
4241			display: flex;
4242			justify-content: center;
4243			padding: 20px 0px 20px;
4244		}
4245	}
4246	@media screen and (max-width: 767px) {
4247		#dfp__livescoring-1_1, #dfp__livescoring-1_2 {
4248			display: flex;
4249			justify-content: center;
4250			padding: 20px 0px 20px;
4251			width: 100%;
4252		}
4253		#dfp__livescoring-1_1 {
4254			padding-bottom: 10px;
4255		}
4256	}
4257	@media screen and (max-width: 767px) {
4258		#dfp__livescoring-1_1 {
4259			margin-left: 0px;
4260			text-align: center;
4261		}
4262	}
4263	@media screen and (min-width: 651px) {
4264		.livescoring__content__right {
4265			width: 100%;
4266		}
4267	}
4268	@media screen and (min-width: 768px) {
4269		.livescoring__content__right {
4270			width: calc(100% - 345px);
4271			width: 100%;
4272			margin-left: 20px;
4273			margin-right: 20px;
4274		}
4275	}
4276	@media screen and (min-width: 997px) {
4277		#dfp__livescoring-1_1 {
4278			margin: 10px 0px 0px 10px;
4279		}
4280	}
4281
4282	#dfp__interstitial {
4283		position: fixed;
4284		z-index: 1000000;
4285		width: 1px;
4286		height: 1px;
4287		margin: 0px;
4288		padding: 0px;
4289		left: 0px;
4290		top: 0px;
4291	}
4292	body.home #ad-wrapper-div-mob-2, body.home #ad-wrapper-div-mob-3 {
4293		margin: 20px 0px;
4294	}
4295	.article-content > iframe {
4296		margin: 40px 0px !important;
4297	}
4298	.section--ad__mob {
4299		width: auto;
4300		max-width: 100%;
4301	}
4302	section {
4303		margin-bottom: 40px;
4304		font-size: 0;
4305	}
4306
4307	.yett_hidden-wrapper {
4308		display: none;
4309	}
4310	.yett_iframe-blocked {
4311		text-align: center;
4312		padding: 26px;
4313		font-family: sans-serif;
4314		font-size: 16px;
4315		font-weight: normal;
4316		background: #f1f1f1;
4317		border: solid 1px #8c8c8c;
4318		border-radius: 8px;
4319		margin:30px 0px;
4320	}
4321	body.home .yett_iframe-blocked {
4322		margin:10px 0px;
4323	}
4324	.yett_iframe-blocked h3 {
4325		margin: 0 0 10px 0;
4326		padding: 0;
4327		line-height: 1;
4328		font-size: 22px;
4329		font-weight: bold;
4330		display: block !important;
4331		font-family: "barlowbold";
4332	}
4333	.yett_iframe-blocked p {
4334		margin: 0 0 10px 0;
4335		padding: 0;
4336		line-height: 1.3;
4337	}
4338	.yett_iframe-blocked p b {
4339		font-family: "barlowbold";
4340	}
4341
4342	.hide--mobile [id^="rpAd_gp-native-2"] {
4343		margin-top: 10px !important;
4344	}
4345	.sidebar [id^="rpAd_gp-native-2"] {
4346		margin-bottom: 30px !important;
4347	}
4348	.ad-wrapper:has([id^="rpAd_div"]) {
4349		width: 100% !important;
4350	}
4351	.ad-wrapper:has([id^="rpAd_div-rectangle"]) {
4352		width: 300px !important;
4353	}
4354	.ad-wrapper [id^="rpAd_div-desk"] {
4355		max-width: 800px;
4356	}
4357	[id^="ad-wrapper-div-mob"] [id^="rpAd_div-mob"] {
4358		max-width: 98.5dvw;
4359	}
4360	@media screen and (min-width: 901px) {
4361		[id^="ad-wrapper-div-mob"] [id^="rpAd_div-mob"] {
4362			max-width: calc(96.7dvw - 300px);
4363		}
4364	}
4365
4366	/* Ad changes bc Google 30.7.2026 */
4367
4368	#travel-guides-carousel-section, .travel-packets {
4369		/*display: none;*/
4370	}
4371
4372	body.home .read-more-articles .carousel {
4373		display: none;
4374	}
4375	body.home .load-more-button {
4376		margin: 20px 0 6px;
4377	}
4378	body.home .read-more-articles .load-more-button {
4379		margin: 30px 0 6px;
4380	}
4381	.load-more-button span {
4382		font-family: "barlowmedium";
4383		background-color: unset;
4384		border: 0;
4385		letter-spacing: 0;
4386		font-size: 18px;
4387		color: #000;
4388		text-shadow: none;
4389		text-transform: none;
4390	}
4391	.load-more-button span:hover {
4392		background-color: unset;
4393		color: #f5a623;
4394	}
4395	.load-more-button span::before {
4396		content: "» " !important;
4397		position: relative !important;
4398		background-color: unset !important;
4399		top: 0px !important;
4400	}
4401
4402	[id*="div-"]:is([id*="desk"], [id*="rect"], [id*="mob"])[data-google-query-id]:not(:empty) > div::before,
4403	#bb-iawr-inarticle-golfpiste::before,
4404	[id*="rpAd_div-mob"]::before {
4405		display: block;
4406		content: "Artikkeli jatkuu mainoksen jälkeen";
4407		content: "MAINOS";
4408		font-size: 14px;
4409		line-height: 1;
4410		text-align: center;
4411		text-transform: uppercase;
4412		position: absolute;
4413		left: 50%;
4414		top: -22px;
4415		transform: translateX(-50%);
4416		white-space: nowrap;
4417		color: rgb(140, 140, 140);
4418		padding: 0px 10px;
4419		font-family: Sans-Serif, serif;
4420	}
4421	:is(.section--ad, #videomainos):has([data-google-query-id]:not([style*="display: none"])) {
4422		background-color: #fff;
4423		margin: 60px auto 50px !important;
4424		max-width: 1352px;
4425	}
4426	#bb-iawr-inarticle-golfpiste {
4427		overflow: visible !important;
4428	}
4429	#videomainos {
4430		position: relative;
4431	}
4432	section#section-1 .livescoring__arrow, section#section-2 .livescoring__arrow {
4433		display: none;
4434	}
4435
4436	@media screen and (min-width: 1353px) {
4437		body.home section.travel-packets .flickity-slider {
4438			transform: translate(25.71%) !important;
4439		}
4440	}
4441
4442	@media screen and (min-width: 997px) {
4443		:is(body.page-id-43 body.page-id-79):has([data-google-query-id]:not([style*="display: none"])) {
4444			margin: 20px auto 10px;
4445		}
4446		.section--ad:not(.article-content .section--ad):has([id*=div-desk-1][data-google-query-id]:not([style*="display: none"])) {
4447			border-block: 1px solid rgb(215, 215, 215);
4448		}
4449		:is(.section--ad, #videomainos):has([data-google-query-id][style*="display: none"]) {
4450			margin: 0;
4451		}
4452		[id*="div-"]:is([id*="desk"], [id*="rect"], [id*="mob"])[data-google-query-id]:not(:empty) {
4453			clear: both;
4454			position: relative;
4455			margin: 0rem 0;
4456			padding: 3px 0;
4457			border-top: 5px solid rgb(235, 235, 235);
4458			border-bottom: 5px solid rgb(235, 235, 235);
4459		}
4460		[id*="div-"][id*="desk-1"][data-google-query-id]:not(:empty):not(.article-content .section--ad *) {
4461			margin: 0rem 0;
4462			padding: 1rem 0rem;
4463			border-block: 0px solid rgb(215, 215, 215);
4464		}
4465		[id*=div-desk-1][data-google-query-id]:not(:empty) > div::before {
4466			top: -18px;
4467		}
4468		[id*="ad-wrapper-div-desk-1"] {
4469			min-height: 432px !important;
4470		}
4471		.article-content #videomainos .section--ad__panorama .ad-wrapper {
4472			margin: 0 -50px 0 -28px;
4473		}
4474		#temp-removed-not-in-use #sidebar .ad-wrapper:has([data-google-query-id]:not([style*="display: none"])) {
4475			margin: 1rem 0;
4476		}
4477		:is(body.home, body.page-id-35) {
4478			& .section--ad:not(.article-content .section--ad):has([id*=div-desk][data-google-query-id]:not([style*="display: none"])) {
4479				border-block: 1px solid rgb(215, 215, 215);
4480			}
4481			& [id*="div-"]:is([id*="desk"])[data-google-query-id]:not(:empty) {
4482				margin: 0rem 0;
4483				padding: 1rem 0rem;
4484				border: 0;
4485				border-block: 0px solid rgb(215, 215, 215);
4486			}
4487			& [id*=div-desk][data-google-query-id]:not(:empty) > div::before {
4488				top: -18px;
4489			}
4490		}
4491		body.home :is(.section--ad, #videomainos):has([id^="div-rectangle-"][data-google-query-id]:not([style*="display: none"]), [id^="rpAd_div-rectangle-"]) {
4492			margin-top: 20px !important;
4493			margin-bottom: 20px !important;
4494		}
4495		body.single-post :is(.section--ad, #videomainos):has([id^="div-rectangle-1"][data-google-query-id]:not([style*="display: none"]), [id^="rpAd_div-rectangle-"]) {
4496			margin-top: 40px !important;
4497			margin-bottom: 30px !important;
4498		}
4499		body.single-post :is(.section--ad, #videomainos):has([id^="div-rectangle-2"][data-google-query-id]:not([style*="display: none"]), [id^="rpAd_div-rectangle-"]) {
4500			margin-top: 50px !important;
4501			margin-bottom: 40px !important;
4502		}
4503		body.home .main-articles .text-wrapper--medium h3 {
4504			font-size: 18px;
4505			font-family: "barlowmedium";
4506			line-height: 1.1;
4507		}
4508		#read-more-articles-list .read-more-articles-item:has([id*=gp-native-]) {
4509			border: 2px solid #00537e
4510		}
4511	}
4512
4513	@media screen and (max-width: 996px) {
4514		body1 {
4515			background-color: red;
4516		}
4517		:is(.section--ad, #videomainos, #bb-iawr-inarticle-golfpiste):has([data-google-query-id]:not([style*="display: none"]), [id^=rpAd_div-mob-]:not([style*="display: none"]),
4518		.bb_wrapper:not([style*="display: none"])) {
4519			background-color: rgb(237, 244, 247);
4520			background-color: rgb(245, 245, 245);
4521			max-width: none;
4522			border-block: 1px solid rgb(171, 203, 218);
4523			border-block: 1px solid rgb(215, 215, 215);
4524			padding: 1rem 0rem;
4525		}
4526		:is(.section--ad, #videomainos):has([data-google-query-id]:not([style*="display: none"]), [id^="rpAd_div-mob-"]:not([style*="display: none"])) {
4527			margin: 60px -8px 40px !important;
4528		}
4529		body.home .main-articles #mob-1-wrapper .section--ad:has([id*=div-mob-1][data-google-query-id]:not([style*="display: none"])) {
4530			margin: 40px -8px 20px !important;
4531		}
4532		[id*="div-"]:is([id*="desk"], [id*="rect"], [id*="mob"])[data-google-query-id]:not(:empty) > div::before,
4533		#bb-iawr-inarticle-golfpiste::before,
4534		[id*="rpAd_div-mob"]::before {
4535			font-size: 12px;
4536			top: -16px;
4537			color: rgb(117, 169, 195);
4538			color: rgb(140, 140, 140);
4539		}
4540		:is(body.page-id-43 body.page-id-79):has([data-google-query-id]:not([style*="display: none"])) {
4541			margin: 20px auto 10px;
4542		}
4543		.section--ad [id^="rpAd_div-mob-"] {
4544			position: unset !important;
4545		}
4546		[id*="ad-wrapper-div-mob-1"] {
4547			min-height: 300px !important;
4548		}
4549		body.home #main-articles-load-mobile {
4550			border-bottom: 2px solid #ebebeb;
4551			border-bottom: 70px solid #ebebeb;
4552			margin-bottom: 20px;
4553		}
4554		body.home .livescoring {
4555			border-bottom: 2px solid #eeeeee;
4556			padding-bottom: 20px;
4557			box-shadow: unset;
4558		}
4559		body.home .has-ad-right {
4560			margin-bottom: 0px;
4561		}
4562		body.home #gp-podcast-element iframe {
4563			width: calc(100% - 24px);
4564		}
4565		body.single-post .article-content .rpAd {
4566			max-width: 320px;
4567		}
4568		#read-more-articles-list .read-more-articles-item [id*=gp-native-] {
4569			border-block: 2px solid #00537e
4570		}
4571
4572	}
4573
4574	@media screen and (max-width: 650px) {
4575		.main-articles .text-wrapper--big {
4576			padding: 12px 12px;
4577		}
4578		.main-articles__right > div:first-child {
4579			border-top: 1px solid lightgray;
4580			padding-top: 15px;
4581		}
4582		.main-articles__right > div {
4583			padding-bottom: 15px;
4584			margin-bottom: 15px;
4585		}
4586		body.home .read-more-articles .load-more-button {
4587			margin: 0px 0 6px;
4588		}
4589		.livescoring__heading span:first-child {
4590			display: block;
4591			float: right;
4592			margin: 4px 20px 0 0;
4593		}
4594		body.single-post .livescoring__mobile {
4595			margin-bottom: 30px;
4596		}
4597	}
4598
4599
4600	@media screen and (max-width: 650px) {
4601		.read-more-articles-list {
4602			margin: 12px 5px 0px;
4603		}
4604		.read-more-articles-item {
4605			padding: 5px;
4606			padding: 0px;
4607			display: block;
4608			clear: both;
4609			border-bottom: 1px solid #e5e5e5;
4610			padding-bottom: 6px;
4611			margin-bottom: 6px;
4612		}
4613		.read-more-articles-item .has-bg {
4614			width: 110px;
4615			height: 110px;
4616			display: inline-block;
4617			padding-top: 0;
4618		}
4619		.read-more-articles-item .text-wrapper {
4620			width: calc(100% - 120px);
4621			float: right;
4622		}
4623		.read-more-articles-item .text-wrapper--small h3 {
4624			font-size: 16px;
4625		}
4626		.read-more-articles-item .text-wrapper {
4627			padding: 0px;
4628		}
4629		#read-more-articles-list .read-more-articles-item [id^=rpAd_gp-native-] {
4630			max-width: unset !important;
4631		}
4632		#read-more-articles-list .read-more-articles-item [id^=rpAd_gp-native-] .image {
4633			max-width: 110px;
4634			width: 110px;
4635		}
4636		#read-more-articles-list .read-more-articles-item [id^=rpAd_gp-native-] .title {
4637			max-width: calc(100% - 110px - 10px);
4638		}
4639		body.home #ad-wrapper-div-mob-2, body.home #ad-wrapper-div-mob-3 {
4640			margin: 0px;
4641		}
4642
4643		.main-articles__center, .main-articles__right {
4644			width: 100%;
4645			margin: 0;
4646			margin-top: 10px;
4647		}
4648		body.home .livescoring-wrapper {
4649			background-color: #fff;
4650			margin: 0 -8px 50px;
4651			padding: 0px;
4652		}
4653		body.home .livescoring__mobile .section-wrapper {
4654			padding: 0px;
4655		}
4656		body.home .main-articles .text-wrapper--big {
4657			padding: 12px 12px;
4658			background-color: #191919;
4659			margin-top: 0px;
4660		}
4661		body.home #gp-podcast-element {
4662			margin-bottom: 0px;
4663			border-top: 1px solid lightgray;
4664			padding: 8px 0px 4px;
4665		}
4666		body.home #gp-podcast-element iframe {
4667			width: calc(100% - 16px);
4668			width: 100%;
4669			height: 80px;
4670		}
4671		body.home .home-article-wrapper, body.home .main-articles__left {
4672			vertical-align: unset;
4673		}
4674		body.home .main-articles__left .text-wrapper {
4675			position: relative;
4676			vertical-align: bottom;
4677		}
4678		body.home .text-wrapper--big .category-tag {
4679			font-size: 15px;
4680			margin-top: -40px;
4681			background-color: #191919;
4682			padding: 7px 15px 5px;
4683			display: inline-block;
4684		}
4685		body.home .main-articles__right > div:nth-child(2) {
4686			margin-bottom: 0px;
4687		}
4688		body.home .text-wrapper--big h3 {
4689			font-size: 18px;
4690			line-height: 1.14;
4691			font-family: "barlowsemibold";
4692		}
4693
4694	}
4695
4696	@media screen and (min-width: 651px) {
4697		.livescoring table {
4698			right: 30px;
4699		}
4700		body.home .livescoring-wrapper {
4701			background-color: #fff;
4702			padding: 0px;
4703		}
4704		body.home .livescoring-wrapper .livescoring__content__right {
4705			margin-left: 0px;
4706		}
4707		body.home section.read-more-articles {
4708			margin-top: 60px;
4709		}
4710		.read-more-articles-list {
4711			display: grid;
4712			grid-template-columns: repeat(auto-fit, minmax(24%, 1fr));
4713			gap: 10px 1.33%;
4714			margin: 10px 5px;
4715		}
4716		body.home .read-more-articles-list {
4717			/*grid-template-columns: repeat(auto-fit, minmax(14%, 1fr));*/
4718		}
4719		.read-more-articles-item {
4720			padding-bottom: 12px;
4721			/*background-color: #f5f5f5;*/
4722			border: 1px solid #e5e5e5;
4723		}
4724		.read-more-articles-item:has([id^="gp-native-2_"]) {
4725			background-color: #005f90;
4726		}
4727		.read-more-articles-item:nth-child(4n) {
4728			margin-right: 0;
4729		}
4730		.read-more-articles-item .has-bg {
4731			width: 100%;
4732			padding-top: 66.66%;
4733		}
4734		#read-more-articles-list > div.read-more-articles-item:has(div.rpAd) {
4735			background-color: #005f90;
4736		}
4737		#sidebar [id^=rpAd_div-rectangle-] {
4738			max-width: 299px !important;
4739		}
4740		#sidebar [id^=rpAd_div-rectangle-] .image {
4741			max-width: 110px;
4742		}
4743		#sidebar [id^=rpAd_div-rectangle-] .title {
4744			max-width: calc(100% - 110px - 10px);
4745		}
4746		.read-more-articles-item .text-wrapper--small h3 {
4747			font-size: 16px;
4748		}
4749		body.home section#section-5 #bbpress-forums li.bbp-body ul.topic {
4750			width: 49%;
4751			margin-right: 1%;
4752		}
4753		body.home .marketplace-latest__icons li {
4754			width: 110px;
4755		}
4756		body.home .marketplace-latest__icons {
4757			width: 350px;
4758		}
4759		body.home .marketplace-latest__latest {
4760			width: calc(100% - 350px);
4761		}
4762		body.home .main-articles__right > div:nth-child(2) {
4763			min-height: 118px;
4764		}
4765	}
4766
4767	@media screen and (min-width: 650px) and (max-width: 996px) {
4768		.main-articles__center {
4769			margin: 5px 0px;
4770		}
4771		.main-articles__right > div {
4772			width: calc(50% - 2.5px);
4773		}
4774		.main-articles__right > div:nth-child(2) {
4775			margin-right: 0px;
4776		}
4777		body.home .read-more-articles-list {
4778			grid-template-columns: repeat(auto-fit, minmax(24%, 1fr));
4779		}
4780	}
4781
4782	.read-more-articles-item:has(div[data-google-query-id][style*="display: none"], div[id*="gp-native-2_"]:empty):not(:has(div[id^="rpAd_gp-native-2_"])) {
4783		display: none !important;
4784	}
4785	.read-more-articles-item:nth-child(n+9 of .read-more-articles-item:not(:has(div[data-google-query-id][style*="display: none"], div[id*="gp-native-2_"]:empty):not(:has(div[id^="rpAd_gp-native-2_"])))) {
4786		display: none;
4787	}
4788	.ad-separatator {
4789		display: none;
4790	}
4791
4792	/* Ad changes bc Google 30.7.2026 end */
4793
4794</style>
4795
4796<!-- // golfpiste.com -->
4797
4798<!-- Body end tag end, do not remove -->
4799
4800<script language="JavaScript" type="text/javascript" src="https://iroweb.iro.fi/GOLFPISTE/iro_golfpiste.js"></script>
4800
4801
4802</body>
4803</html>
4804

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.