PageSourceSearch

https://gundog-journal.com/contact/

html gundog-journal.com collected 2026-10-02 12:27:00 UTC 454,879 bytes, 5,074 lines download raw bytes

1<!doctype html>
2<html lang="en-US">
3  <head>
4    <meta charset="utf-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1">
6    <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
7	<style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style>
8	
8<script id="tws-header-height">
9(function () {
10	var root = document.documentElement;
11	var last = -1;
12
13	function apply() {
14		var header = document.getElementById('header');
15		if (!header) { return; }
16		var h = Math.round(header.getBoundingClientRect().height);
17		// Ignore a zero reading, which happens if we measure while the header is hidden.
18		if (!h || h === last) { return; }
19		last = h;
20		root.style.setProperty('--tws-header-h', h + 'px');
21	}
22
23	function init() {
24		apply();
25
26		var header = document.getElementById('header');
27
28		// Primary mechanism: fires on any height change, including the CTA strapline
29		// rewrapping on rotate or resize, and late web font swaps.
30		if (header && window.ResizeObserver) {
31			new ResizeObserver(apply).observe(header);
32		}
33
34		// Fallbacks for browsers without ResizeObserver, and for anything that changes
35		// the header after first paint.
36		window.addEventListener('resize', apply, { passive: true });
37		window.addEventListener('orientationchange', apply);
38		window.addEventListener('load', apply);
39
40		if (document.fonts && document.fonts.ready) {
41			document.fonts.ready.then(apply).catch(function () {});
42		}
43	}
44
45	if (document.readyState === 'loading') {
46		document.addEventListener('DOMContentLoaded', init);
47	} else {
48		init();
49	}
50}());
51</script>
51
52		
52<script id="tws-ticket-ref" nowprocket data-cfasync="false" data-no-optimize="1" data-no-defer="1">
53(function(){try{
54var PATHS=[],HERE=false;
55var q=new URLSearchParams(location.search);
56var tag=(q.get('ref')||[q.get('utm_source'),q.get('utm_campaign')].filter(Boolean).join('-')).replace(/[^A-Za-z0-9_-]/g,'').slice(0,40);
57if(tag){sessionStorage.setItem('tws_ref',tag);}
58var path=(location.pathname.replace(/\/+$/,'')||'/').toLowerCase();
59if(!HERE&&PATHS.indexOf(path)===-1)return;
60if(q.get('ref'))return;
61var s=tag||sessionStorage.getItem('tws_ref');
62if(!s)return;
63q.set('ref',s);
64history.replaceState(history.state,'',location.pathname+'?'+q.toString()+location.hash);
65}catch(e){}})();
66</script>
66
67
68	<!-- This site is optimized with the Yoast SEO plugin v24.4 - https://yoast.com/wordpress/plugins/seo/ -->
69	<title>Contact us</title><link rel="preload" data-rocket-preload as="image" href="https://gundog-journal.com/app/uploads/sites/2/2025/01/GJ-logo-BLACK-1.png" fetchpriority="high">
70	<meta name="description" content="Find contact details for subscriptions, editorial feedback and advertising inquiries to connect with our expert team at Gundog Journal." />
71	<link rel="canonical" href="https://gundog-journal.com/contact/" />
72	<meta property="og:locale" content="en_US" />
73	<meta property="og:type" content="article" />
74	<meta property="og:title" content="Contact us" />
75	<meta property="og:description" content="Find contact details for subscriptions, editorial feedback and advertising inquiries to connect with our expert team at Gundog Journal." />
76	<meta property="og:url" content="https://gundog-journal.com/contact/" />
77	<meta property="og:site_name" content="Gundog Journal" />
78	<meta property="article:modified_time" content="2026-09-07T09:32:47+00:00" />
79	<meta property="og:image" content="https://gundog-journal.com/app/uploads/sites/2/2025/01/BR-Gundog-Book-Day-1-105-scaled.jpg" />
80	<meta property="og:image:width" content="2560" />
81	<meta property="og:image:height" content="1707" />
82	<meta property="og:image:type" content="image/jpeg" />
83	<meta name="twitter:card" content="summary_large_image" />
84	<meta name="twitter:label1" content="Est. reading time" />
85	<meta name="twitter:data1" content="2 minutes" />
86	
86<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://gundog-journal.com/contact/","url":"https://gundog-journal.com/contact/","name":"Contact us","isPartOf":{"@id":"https://gundog-journal.com/#website"},"primaryImageOfPage":{"@id":"https://gundog-journal.com/contact/#primaryimage"},"image":{"@id":"https://gundog-journal.com/contact/#primaryimage"},"thumbnailUrl":"/app/uploads/sites/2/2025/01/BR-Gundog-Book-Day-1-105-scaled.jpg","datePublished":"2023-11-22T13:41:35+00:00","dateModified":"2026-09-07T09:32:47+00:00","description":"Find contact details for subscriptions, editorial feedback and advertising inquiries to connect with our expert team at Gundog Journal.","breadcrumb":{"@id":"https://gundog-journal.com/contact/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://gundog-journal.com/contact/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://gundog-journal.com/contact/#primaryimage","url":"/app/uploads/sites/2/2025/01/BR-Gundog-Book-Day-1-105-scaled.jpg","contentUrl":"/app/uploads/sites/2/2025/01/BR-Gundog-Book-Day-1-105-scaled.jpg","width":2560,"height":1707,"caption":"A black and golden labrador sitting looking at the camera"},{"@type":"BreadcrumbList","@id":"https://gundog-journal.com/contact/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://gundog-journal.com/"},{"@type":"ListItem","position":2,"name":"Contact us"}]},{"@type":"WebSite","@id":"https://gundog-journal.com/#website","url":"https://gundog-journal.com/","name":"Gundog Journal","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://gundog-journal.com/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}</script>
86
87	<!-- / Yoast SEO plugin. -->
88
89
90<link rel='dns-prefetch' href='//www.shootinguk.co.uk' />
91<style id="tws-empty-ads">.tws-ad-empty{display:none!important}.flex.justify-center.items-center:has(>.tws-ad-empty),.flex.justify-center.items-center:has(>div>.tws-ad-empty),.adrotate-ad-container:has(.tws-ad-empty),div:has(>.adrotate-ad-container .tws-ad-empty),section:has(>.container>.flex.justify-center.items-center>.tws-ad-empty),section:has(>.container>.flex.justify-center.items-center>div>.tws-ad-empty){display:none!important}</style>
92<style id='global-styles-inline-css'>
93:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--inherit: inherit;--wp--preset--color--current: currentcolor;--wp--preset--color--transparent: transparent;--wp--preset--color--slate-50: #f8fafc;--wp--preset--color--slate-100: #f1f5f9;--wp--preset--color--slate-200: #e2e8f0;--wp--preset--color--slate-300: #cbd5e1;--wp--preset--color--slate-400: #94a3b8;--wp--preset--color--slate-500: #64748b;--wp--preset--color--slate-600: #475569;--wp--preset--color--slate-700: #334155;--wp--preset--color--slate-800: #1e293b;--wp--preset--color--slate-900: #0f172a;--wp--preset--color--slate-950: #020617;--wp--preset--color--gray-50: #f9fafb;--wp--preset--color--gray-100: #f3f4f6;--wp--preset--color--gray-200: #e5e7eb;--wp--preset--color--gray-300: #d1d5db;--wp--preset--color--gray-400: #9ca3af;--wp--preset--color--gray-500: #6b7280;--wp--preset--color--gray-600: #4b5563;--wp--preset--color--gray-700: #374151;--wp--preset--color--gray-800: #1f2937;--wp--preset--color--gray-900: #111827;--wp--preset--color--gray-950: #030712;--wp--preset--color--zinc-50: #fafafa;--wp--preset--color--zinc-100: #f4f4f5;--wp--preset--color--zinc-200: #e4e4e7;--wp--preset--color--zinc-300: #d4d4d8;--wp--preset--color--zinc-400: #a1a1aa;--wp--preset--color--zinc-500: #71717a;--wp--preset--color--zinc-600: #52525b;--wp--preset--color--zinc-700: #3f3f46;--wp--preset--color--zinc-800: #27272a;--wp--preset--color--zinc-900: #18181b;--wp--preset--color--zinc-950: #09090b;--wp--preset--color--neutral-50: #fafafa;--wp--preset--color--neutral-100: #f5f5f5;--wp--preset--color--neutral-200: #e5e5e5;--wp--preset--color--neutral-300: #d4d4d4;--wp--preset--color--neutral-400: #a3a3a3;--wp--preset--color--neutral-500: #737373;--wp--preset--color--neutral-600: #525252;--wp--preset--color--neutral-700: #404040;--wp--preset--color--neutral-800: #262626;--wp--preset--color--neutral-900: #171717;--wp--preset--color--neutral-950: #0a0a0a;--wp--preset--color--stone-50: #fafaf9;--wp--preset--color--stone-100: #f5f5f4;--wp--preset--color--stone-200: #e7e5e4;--wp--preset--color--stone-300: #d6d3d1;--wp--preset--color--stone-400: #a8a29e;--wp--preset--color--stone-500: #78716c;--wp--preset--color--stone-600: #57534e;--wp--preset--color--stone-700: #44403c;--wp--preset--color--stone-800: #292524;--wp--preset--color--stone-900: #1c1917;--wp--preset--color--stone-950: #0c0a09;--wp--preset--color--red-50: #fef2f2;--wp--preset--color--red-100: #fee2e2;--wp--preset--color--red-200: #fecaca;--wp--preset--color--red-300: #fca5a5;--wp--preset--color--red-400: #f87171;--wp--preset--color--red-500: #ef4444;--wp--preset--color--red-600: #dc2626;--wp--preset--color--red-700: #b91c1c;--wp--preset--color--red-800: #991b1b;--wp--preset--color--red-900: #7f1d1d;--wp--preset--color--red-950: #450a0a;--wp--preset--color--orange-50: #fff7ed;--wp--preset--color--orange-100: #ffedd5;--wp--preset--color--orange-200: #fed7aa;--wp--preset--color--orange-300: #fdba74;--wp--preset--color--orange-400: #fb923c;--wp--preset--color--orange-500: #f97316;--wp--preset--color--orange-600: #ea580c;--wp--preset--color--orange-700: #c2410c;--wp--preset--color--orange-800: #9a3412;--wp--preset--color--orange-900: #7c2d12;--wp--preset--color--orange-950: #431407;--wp--preset--color--amber-50: #fffbeb;--wp--preset--color--amber-100: #fef3c7;--wp--preset--color--amber-200: #fde68a;--wp--preset--color--amber-300: #fcd34d;--wp--preset--color--amber-400: #fbbf24;--wp--preset--color--amber-500: #f59e0b;--wp--preset--color--amber-600: #d97706;--wp--preset--color--amber-700: #b45309;--wp--preset--color--amber-800: #92400e;--wp--preset--color--amber-900: #78350f;--wp--preset--color--amber-950: #451a03;--wp--preset--color--yellow-50: #fefce8;--wp--preset--color--yellow-100: #fef9c3;--wp--preset--color--yellow-200: #fef08a;--wp--preset--color--yellow-300: #fde047;--wp--preset--color--yellow-400: #facc15;--wp--preset--color--yellow-500: #eab308;--wp--preset--color--yellow-600: #ca8a04;--wp--preset--color--yellow-700: #a16207;--wp--preset--color--yellow-800: #854d0e;--wp--preset--color--yellow-900: #713f12;--wp--preset--color--yellow-950: #422006;--wp--preset--color--lime-50: #f7fee7;--wp--preset--color--lime-100: #ecfccb;--wp--preset--color--lime-200: #d9f99d;--wp--preset--color--lime-300: #bef264;--wp--preset--color--lime-400: #a3e635;--wp--preset--color--lime-500: #84cc16;--wp--preset--color--lime-600: #65a30d;--wp--preset--color--lime-700: #4d7c0f;--wp--preset--color--lime-800: #3f6212;--wp--preset--color--lime-900: #365314;--wp--preset--color--lime-950: #1a2e05;--wp--preset--color--green-50: #f0fdf4;--wp--preset--color--green-100: #dcfce7;--wp--preset--color--green-200: #bbf7d0;--wp--preset--color--green-300: #86efac;--wp--preset--color--green-400: #4ade80;--wp--preset--color--green-500: #22c55e;--wp--preset--color--green-600: #16a34a;--wp--preset--color--green-700: #15803d;--wp--preset--color--green-800: #166534;--wp--preset--color--green-900: #14532d;--wp--preset--color--green-950: #052e16;
93--wp--preset--color--emerald-50: #ecfdf5;--wp--preset--color--emerald-100: #d1fae5;--wp--preset--color--emerald-200: #a7f3d0;--wp--preset--color--emerald-300: #6ee7b7;--wp--preset--color--emerald-400: #34d399;--wp--preset--color--emerald-500: #10b981;--wp--preset--color--emerald-600: #059669;--wp--preset--color--emerald-700: #047857;--wp--preset--color--emerald-800: #065f46;--wp--preset--color--emerald-900: #064e3b;--wp--preset--color--emerald-950: #022c22;--wp--preset--color--teal-50: #f0fdfa;--wp--preset--color--teal-100: #ccfbf1;--wp--preset--color--teal-200: #99f6e4;--wp--preset--color--teal-300: #5eead4;--wp--preset--color--teal-400: #2dd4bf;--wp--preset--color--teal-500: #14b8a6;--wp--preset--color--teal-600: #0d9488;--wp--preset--color--teal-700: #0f766e;--wp--preset--color--teal-800: #115e59;--wp--preset--color--teal-900: #134e4a;--wp--preset--color--teal-950: #042f2e;--wp--preset--color--cyan-50: #ecfeff;--wp--preset--color--cyan-100: #cffafe;--wp--preset--color--cyan-200: #a5f3fc;--wp--preset--color--cyan-300: #67e8f9;--wp--preset--color--cyan-400: #22d3ee;--wp--preset--color--cyan-500: #06b6d4;--wp--preset--color--cyan-600: #0891b2;--wp--preset--color--cyan-700: #0e7490;--wp--preset--color--cyan-800: #155e75;--wp--preset--color--cyan-900: #164e63;--wp--preset--color--cyan-950: #083344;--wp--preset--color--sky-50: #f0f9ff;--wp--preset--color--sky-100: #e0f2fe;--wp--preset--color--sky-200: #bae6fd;--wp--preset--color--sky-300: #7dd3fc;--wp--preset--color--sky-400: #38bdf8;--wp--preset--color--sky-500: #0ea5e9;--wp--preset--color--sky-600: #0284c7;--wp--preset--color--sky-700: #0369a1;--wp--preset--color--sky-800: #075985;--wp--preset--color--sky-900: #0c4a6e;--wp--preset--color--sky-950: #082f49;--wp--preset--color--blue-50: #eff6ff;--wp--preset--color--blue-100: #dbeafe;--wp--preset--color--blue-200: #bfdbfe;--wp--preset--color--blue-300: #93c5fd;--wp--preset--color--blue-400: #60a5fa;--wp--preset--color--blue-500: #3b82f6;--wp--preset--color--blue-600: #2563eb;--wp--preset--color--blue-700: #1d4ed8;--wp--preset--color--blue-800: #1e40af;--wp--preset--color--blue-900: #1e3a8a;--wp--preset--color--blue-950: #172554;--wp--preset--color--indigo-50: #eef2ff;--wp--preset--color--indigo-100: #e0e7ff;--wp--preset--color--indigo-200: #c7d2fe;--wp--preset--color--indigo-300: #a5b4fc;--wp--preset--color--indigo-400: #818cf8;--wp--preset--color--indigo-500: #6366f1;--wp--preset--color--indigo-600: #4f46e5;--wp--preset--color--indigo-700: #4338ca;--wp--preset--color--indigo-800: #3730a3;--wp--preset--color--indigo-900: #312e81;--wp--preset--color--indigo-950: #1e1b4b;--wp--preset--color--violet-50: #f5f3ff;--wp--preset--color--violet-100: #ede9fe;--wp--preset--color--violet-200: #ddd6fe;--wp--preset--color--violet-300: #c4b5fd;--wp--preset--color--violet-400: #a78bfa;--wp--preset--color--violet-500: #8b5cf6;--wp--preset--color--violet-600: #7c3aed;--wp--preset--color--violet-700: #6d28d9;--wp--preset--color--violet-800: #5b21b6;--wp--preset--color--violet-900: #4c1d95;--wp--preset--color--violet-950: #2e1065;--wp--preset--color--purple-50: #faf5ff;--wp--preset--color--purple-100: #f3e8ff;--wp--preset--color--purple-200: #e9d5ff;--wp--preset--color--purple-300: #d8b4fe;--wp--preset--color--purple-400: #c084fc;--wp--preset--color--purple-500: #a855f7;--wp--preset--color--purple-600: #9333ea;--wp--preset--color--purple-700: #7e22ce;--wp--preset--color--purple-800: #6b21a8;--wp--preset--color--purple-900: #581c87;--wp--preset--color--purple-950: #3b0764;--wp--preset--color--fuchsia-50: #fdf4ff;--wp--preset--color--fuchsia-100: #fae8ff;--wp--preset--color--fuchsia-200: #f5d0fe;--wp--preset--color--fuchsia-300: #f0abfc;--wp--preset--color--fuchsia-400: #e879f9;--wp--preset--color--fuchsia-500: #d946ef;--wp--preset--color--fuchsia-600: #c026d3;--wp--preset--color--fuchsia-700: #a21caf;--wp--preset--color--fuchsia-800: #86198f;--wp--preset--color--fuchsia-900: #701a75;--wp--preset--color--fuchsia-950: #4a044e;--wp--preset--color--pink-50: #fdf2f8;--wp--preset--color--pink-100: #fce7f3;--wp--preset--color--pink-200: #fbcfe8;--wp--preset--color--pink-300: #f9a8d4;--wp--preset--color--pink-400: #f472b6;--wp--preset--color--pink-500: #ec4899;--wp--preset--color--pink-600: #db2777;--wp--preset--color--pink-700: #be185d;--wp--preset--color--pink-800: #9d174d;--wp--preset--color--pink-900: #831843;--wp--preset--color--pink-950: #500724;--wp--preset--color--rose-50: #fff1f2;--wp--preset--color--rose-100: #ffe4e6;
93--wp--preset--color--rose-200: #fecdd3;--wp--preset--color--rose-300: #fda4af;--wp--preset--color--rose-400: #fb7185;--wp--preset--color--rose-500: #f43f5e;--wp--preset--color--rose-600: #e11d48;--wp--preset--color--rose-700: #be123c;--wp--preset--color--rose-800: #9f1239;--wp--preset--color--rose-900: #881337;--wp--preset--color--rose-950: #4c0519;--wp--preset--color--lightgrey: #b1b1b1;--wp--preset--color--heading: #525252;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
93--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--xs: 0.75rem;--wp--preset--font-size--sm: .813rem;--wp--preset--font-size--base: 16px;--wp--preset--font-size--lg: 1.125rem;--wp--preset--font-size--xl: 1.25rem;--wp--preset--font-size--2-xl: 1.5rem;--wp--preset--font-size--3-xl: 1.875rem;--wp--preset--font-size--4-xl: 2.25rem;--wp--preset--font-size--5-xl: 3rem;--wp--preset--font-size--6-xl: 3.75rem;--wp--preset--font-size--7-xl: 4.5rem;--wp--preset--font-size--8-xl: 6rem;--wp--preset--font-size--9-xl: 8rem;--wp--preset--font-size--10-px: 10px;--wp--preset--font-size--18-px: 18px;--wp--preset--font-family--proxima-nova: Proxima Nova;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){margin-left: auto !important;margin-right: auto !important;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}a:where(:not(.wp-element-button)){text-decoration: underline;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;line-height: inherit;padding: calc(0.667em + 2px) calc(1.333em + 2px);text-decoration: none;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-inherit-color{color: var(--wp--preset--color--inherit) !important;}.has-current-color{color: var(--wp--preset--color--current) !important;}.has-transparent-color{color: var(--wp--preset--color--transparent) !important;}.has-slate-50-color{color: var(--wp--preset--color--slate-50) !important;}.has-slate-100-color{color: var(--wp--preset--color--slate-100) !important;}.has-slate-200-color{color: var(--wp--preset--color--slate-200) !important;}.has-slate-300-color{color: var(--wp--preset--color--slate-300) !important;}.has-slate-400-color{color: var(--wp--preset--color--slate-400) !important;}.has-slate-500-color{color: var(--wp--preset--color--slate-500) !important;}.has-slate-600-color{color: var(--wp--preset--color--slate-600) !important;}.has-slate-700-color{color: var(--wp--preset--color--slate-700) !important;}.has-slate-800-color{color: var(--wp--preset--color--slate-800) !important;}.has-slate-900-color{color: var(--wp--preset--color--slate-900) !important;}.has-slate-950-color{color: var(--wp--preset--color--slate-950) !important;}.has-gray-50-color{color: var(--wp--preset--color--gray-50) !important;}.has-gray-100-color{color: var(--wp--preset--color--gray-100) !important;}.has-gray-200-color{color: var(--wp--preset--color--gray-200) !important;}.has-gray-300-color{color: var(--wp--preset--color--gray-300) !important;}.has-gray-400-color{color: var(--wp--preset--color--gray-400) !important;}.has-gray-500-color{color: var(--wp--preset--color--gray-500) !important;}.has-gray-600-color{color: var(--wp--preset--color--gray-600) !important;}.has-gray-700-color{color: var(--wp--preset--color--gray-700) !important;}.has-gray-800-color{color: var(--wp--preset--color--gray-800) !important;}.has-gray-900-color{color: var(--wp--preset--color--gray-900) !important;}.has-gray-950-color{color: var(--wp--preset--color--gray-950) !important;}.has-zinc-50-color{color: var(--wp--preset--color--zinc-50) !important;}.has-zinc-100-color{color: var(--wp--preset--color--zinc-100) !important;}.has-zinc-200-color{color: var(--wp--preset--color--zinc-200) !important;}.has-zinc-300-color{color: var(--wp--preset--color--zinc-300) !important;}.has-zinc-400-color{color: var(--wp--preset--color--zinc-400) !important;}.has-zinc-500-color{color: var(--wp--preset--color--zinc-500) !important;}.has-zinc-600-color{color: var(--wp--preset--color--zinc-600) !important;}.has-zinc-700-color{color: var(--wp--preset--color--zinc-700) !important;}.has-zinc-800-color{color: var(--wp--preset--color--zinc-800) !important;}.has-zinc-900-color{color: var(--wp--preset--color--zinc-900) !important;}.has-zinc-950-color{color: var(--wp--preset--color--zinc-950) !important;}.has-neutral-50-color{color: var(--wp--preset--color--neutral-50) !important;}.has-neutral-100-color{color: var(--wp--preset--color--neutral-100) !important;}.has-neutral-200-color{color: var(--wp--preset--color--neutral-200) !important;}.has-neutral-300-color{color: var(--wp--preset--color--neutral-300) !important;}.has-neutral-400-color{color: var(--wp--preset--color--neutral-400) !important;}.has-neutral-500-color{color: var(--wp--preset--color--neutral-500) !important;}.has-neutral-600-color{color: var(--wp--preset--color--neutral-600) !important;}.has-neutral-700-color{color: var(--wp--preset--color--neutral-700) !important;}.has-neutral-800-color{color: var(--wp--preset--color--neutral-800) !important;}.has-neutral-900-color{color: var(--wp--preset--color--neutral-900) !important;}.has-neutral-950-color{color: var(--wp--preset--color--neutral-950) !important;}.has-stone-50-color{color: var(--wp--preset--color--stone-50) !important;}.has-stone-100-color{color: var(--wp--preset--color--stone-100) !important;}.has-stone-200-color{color: var(--wp--preset--color--stone-200) !important;}.has-stone-300-color{color: var(--wp--preset--color--stone-300) !important;}.has-stone-400-color{color: var(--wp--preset--color--stone-400) !important;}.has-stone-500-color{color: var(--wp--preset--color--stone-500) !important;}.has-stone-600-color{color: var(--wp--preset--color--stone-600) !important;}.has-stone-700-color{color: var(--wp--preset--color--stone-700) !important;}.has-stone-800-color{color: var(--wp--preset--color--stone-800) !important;}.has-stone-900-color{color: var(--wp--preset--color--stone-900) !important;}.has-stone-950-color{color: var(--wp--preset--color--stone-950) !important;}.has-red-50-color{color: var(--wp--preset--color--red-50) !important;}.has-red-100-color{color: var(--wp--preset--color--red-100) !important;}.has-red-200-color{color: var(--wp--preset--color--red-200) !important;}.has-red-300-color{color: var(--wp--preset--color--red-300) !important;}.has-red-400-color{color: var(--wp--preset--color--red-400) !important;}.has-red-500-color{color: var(--wp--preset--color--red-500) !important;}.has-red-600-color{color: var(--wp--preset--color--red-600) !important;}.has-red-700-color{color: var(--wp--preset--color--red-700) !important;}.has-red-800-color{color: var(--wp--preset--color--red-800) !important;}.has-red-900-color{color: var(--wp--preset--color--red-900) !important;}.has-red-950-color{color: var(--wp--preset--color--red-950) !important;}.has-orange-50-color{color: var(--wp--preset--color--orange-50) !important;}.has-orange-100-color{color: var(--wp--preset--color--orange-100) !important;}.has-orange-200-color{color: var(--wp--preset--color--orange-200) !important;}.has-orange-300-color{color: var(--wp--preset--color--orange-300) !important;}.has-orange-400-color{color: var(--wp--preset--color--orange-400) !important;}.has-orange-500-color{color: var(--wp--preset--color--orange-500) !important;}.has-orange-600-color{color: var(--wp--preset--color--orange-600) !important;}.has-orange-700-color{color: var(--wp--preset--color--orange-700) !important;}.has-orange-800-color{color: var(--wp--preset--color--orange-800) !important;}.has-orange-900-color{color: var(--wp--preset--color--orange-900) !important;}.has-orange-950-color{color: var(--wp--preset--color--orange-950) !important;}.has-amber-50-color{color: var(--wp--preset--color--amber-50) !important;}.has-amber-100-color{color: var(--wp--preset--color--amber-100) !important;}.has-amber-200-color{color: var(--wp--preset--color--amber-200) !important;}.has-amber-300-color{color: var(--wp--preset--color--amber-300) !important;}.has-amber-400-color{color: var(--wp--preset--color--amber-400) !important;}.has-amber-500-color{color: var(--wp--preset--color--amber-500) !important;}.has-amber-600-color{color: var(--wp--preset--color--amber-600) !important;}.has-amber-700-color{color: var(--wp--preset--color--amber-700) !important;}.has-amber-800-color{color: var(--wp--preset--color--amber-800) !important;}.has-amber-900-color{color: var(--wp--preset--color--amber-900) !important;}.has-amber-950-color{color: var(--wp--preset--color--amber-950) !important;}.has-yellow-50-color{color: var(--wp--preset--color--yellow-50) !important;}.has-yellow-100-color{color: var(--wp--preset--color--yellow-100) !important;}.has-yellow-200-color{color: var(--wp--preset--color--yellow-200) !important;}.has-yellow-300-color{color: var(--wp--preset--color--yellow-300) !important;}.has-yellow-400-color{color: var(--wp--preset--color--yellow-400) !important;}.has-yellow-500-color{color: var(--wp--preset--color--yellow-500) !important;}.has-yellow-600-color{color: var(--wp--preset--color--yellow-600) !important;}.has-yellow-700-color{color: var(--wp--preset--color--yellow-700) !important;}.has-yellow-800-color{color: var(--wp--preset--color--yellow-800) !important;}.has-yellow-900-color{color: var(--wp--preset--color--yellow-900) !important;}.has-yellow-950-color{color: var(--wp--preset--color--yellow-950) !important;}.has-lime-50-color{color: var(--wp--preset--color--lime-50) !important;}.has-lime-100-color{color: var(--wp--preset--color--lime-100) !important;}.has-lime-200-color{color: var(--wp--preset--color--lime-200) !important;}.has-lime-300-color{color: var(--wp--preset--color--lime-300) !important;}.has-lime-400-color{color: var(--wp--preset--color--lime-400) !important;}.has-lime-500-color{color: var(--wp--preset--color--lime-500) !important;}.has-lime-600-color{color: var(--wp--preset--color--lime-600) !important;}.has-lime-700-color{color: var(--wp--preset--color--lime-700) !important;}.has-lime-800-color{color: var(--wp--preset--color--lime-800) !important;}.has-lime-900-color{color: var(--wp--preset--color--lime-900) !important;}.has-lime-950-color{color: var(--wp--preset--color--lime-950) !important;}.has-green-50-color{color: var(--wp--preset--color--green-50) !important;}.has-green-100-color{color: var(--wp--preset--color--green-100) !important;}.has-green-200-color{color: var(--wp--preset--color--green-200) !important;}.has-green-300-color{color: var(--wp--preset--color--green-300) !important;}.has-green-400-color{color: var(--wp--preset--color--green-400) !important;}.has-green-500-color{color: var(--wp--preset--color--green-500) !important;}.has-green-600-color{color: var(--wp--preset--color--green-600) !important;}.has-green-700-color{color: var(--wp--preset--color--green-700) !important;}.has-green-800-color{color: var(--wp--preset--color--green-800) !important;}.has-green-900-color{color: var(--wp--preset--color--green-900) !important;}.has-green-950-color{color: var(--wp--preset--color--green-950) !important;}.has-emerald-50-color{color: var(--wp--preset--color--emerald-50) !important;}.has-emerald-100-color{color: var(--wp--preset--color--emerald-100) !important;}.has-emerald-200-color{color: var(--wp--preset--color--emerald-200) !important;}.has-emerald-300-color{color: var(--wp--preset--color--emerald-300) !important;}.has-emerald-400-color{color: var(--wp--preset--color--emerald-400) !important;}.has-emerald-500-color{color: var(--wp--preset--color--emerald-500) !important;}.has-emerald-600-color{color: var(--wp--preset--color--emerald-600) !important;}.has-emerald-700-color{color: var(--wp--preset--color--emerald-700) !important;}.has-emerald-800-color{color: var(--wp--preset--color--emerald-800) !important;}.has-emerald-900-color{color: var(--wp--preset--color--emerald-900) !important;}.has-emerald-950-color{color: var(--wp--preset--color--emerald-950) !important;}.has-teal-50-color{color: var(--wp--preset--color--teal-50) !important;}.has-teal-100-color{color: var(--wp--preset--color--teal-100) !important;}.has-teal-200-color{color: var(--wp--preset--color--teal-200) !important;}.has-teal-300-color{color: var(--wp--preset--color--teal-300) !important;}.has-teal-400-color{color: var(--wp--preset--color--teal-400) !important;}.has-teal-500-color{color: var(--wp--preset--color--teal-500) !important;}.has-teal-600-color{color: var(--wp--preset--color--teal-600) !important;}.has-teal-700-color{color: var(--wp--preset--color--teal-700) !important;}.has-teal-800-color{color: var(--wp--preset--color--teal-800) !important;}.has-teal-900-color{color: var(--wp--preset--color--teal-900) !important;}.has-teal-950-color{color: var(--wp--preset--color--teal-950) !important;}.has-cyan-50-color{color: var(--wp--preset--color--cyan-50) !important;}.has-cyan-100-color{color: var(--wp--preset--color--cyan-100) !important;}.has-cyan-200-color{color: var(--wp--preset--color--cyan-200) !important;}.has-cyan-300-color{color: var(--wp--preset--color--cyan-300) !important;}.has-cyan-400-color{color: var(--wp--preset--color--cyan-400) !important;}.has-cyan-500-color{color: var(--wp--preset--color--cyan-500) !important;}.has-cyan-600-color{color
93: var(--wp--preset--color--cyan-600) !important;}.has-cyan-700-color{color: var(--wp--preset--color--cyan-700) !important;}.has-cyan-800-color{color: var(--wp--preset--color--cyan-800) !important;}.has-cyan-900-color{color: var(--wp--preset--color--cyan-900) !important;}.has-cyan-950-color{color: var(--wp--preset--color--cyan-950) !important;}.has-sky-50-color{color: var(--wp--preset--color--sky-50) !important;}.has-sky-100-color{color: var(--wp--preset--color--sky-100) !important;}.has-sky-200-color{color: var(--wp--preset--color--sky-200) !important;}.has-sky-300-color{color: var(--wp--preset--color--sky-300) !important;}.has-sky-400-color{color: var(--wp--preset--color--sky-400) !important;}.has-sky-500-color{color: var(--wp--preset--color--sky-500) !important;}.has-sky-600-color{color: var(--wp--preset--color--sky-600) !important;}.has-sky-700-color{color: var(--wp--preset--color--sky-700) !important;}.has-sky-800-color{color: var(--wp--preset--color--sky-800) !important;}.has-sky-900-color{color: var(--wp--preset--color--sky-900) !important;}.has-sky-950-color{color: var(--wp--preset--color--sky-950) !important;}.has-blue-50-color{color: var(--wp--preset--color--blue-50) !important;}.has-blue-100-color{color: var(--wp--preset--color--blue-100) !important;}.has-blue-200-color{color: var(--wp--preset--color--blue-200) !important;}.has-blue-300-color{color: var(--wp--preset--color--blue-300) !important;}.has-blue-400-color{color: var(--wp--preset--color--blue-400) !important;}.has-blue-500-color{color: var(--wp--preset--color--blue-500) !important;}.has-blue-600-color{color: var(--wp--preset--color--blue-600) !important;}.has-blue-700-color{color: var(--wp--preset--color--blue-700) !important;}.has-blue-800-color{color: var(--wp--preset--color--blue-800) !important;}.has-blue-900-color{color: var(--wp--preset--color--blue-900) !important;}.has-blue-950-color{color: var(--wp--preset--color--blue-950) !important;}.has-indigo-50-color{color: var(--wp--preset--color--indigo-50) !important;}.has-indigo-100-color{color: var(--wp--preset--color--indigo-100) !important;}.has-indigo-200-color{color: var(--wp--preset--color--indigo-200) !important;}.has-indigo-300-color{color: var(--wp--preset--color--indigo-300) !important;}.has-indigo-400-color{color: var(--wp--preset--color--indigo-400) !important;}.has-indigo-500-color{color: var(--wp--preset--color--indigo-500) !important;}.has-indigo-600-color{color: var(--wp--preset--color--indigo-600) !important;}.has-indigo-700-color{color: var(--wp--preset--color--indigo-700) !important;}.has-indigo-800-color{color: var(--wp--preset--color--indigo-800) !important;}.has-indigo-900-color{color: var(--wp--preset--color--indigo-900) !important;}.has-indigo-950-color{color: var(--wp--preset--color--indigo-950) !important;}.has-violet-50-color{color: var(--wp--preset--color--violet-50) !important;}.has-violet-100-color{color: var(--wp--preset--color--violet-100) !important;}.has-violet-200-color{color: var(--wp--preset--color--violet-200) !important;}.has-violet-300-color{color: var(--wp--preset--color--violet-300) !important;}.has-violet-400-color{color: var(--wp--preset--color--violet-400) !important;}.has-violet-500-color{color: var(--wp--preset--color--violet-500) !important;}.has-violet-600-color{color: var(--wp--preset--color--violet-600) !important;}.has-violet-700-color{color: var(--wp--preset--color--violet-700) !important;}.has-violet-800-color{color: var(--wp--preset--color--violet-800) !important;}.has-violet-900-color{color: var(--wp--preset--color--violet-900) !important;}.has-violet-950-color{color: var(--wp--preset--color--violet-950) !important;}.has-purple-50-color{color: var(--wp--preset--color--purple-50) !important;}.has-purple-100-color{color: var(--wp--preset--color--purple-100) !important;}.has-purple-200-color{color: var(--wp--preset--color--purple-200) !important;}.has-purple-300-color{color: var(--wp--preset--color--purple-300) !important;}.has-purple-400-color{color: var(--wp--preset--color--purple-400) !important;}.has-purple-500-color{color: var(--wp--preset--color--purple-500) !important;}.has-purple-600-color{color: var(--wp--preset--color--purple-600) !important;}.has-purple-700-color{color: var(--wp--preset--color--purple-700) !important;}.has-purple-800-color{color: var(--wp--preset--color--purple-800) !important;}.has-purple-900-color{color: var(--wp--preset--color--purple-900) !important;}.has-purple-950-color{color: var(--wp--preset--color--purple-950) !important;}.has-fuchsia-50-color{color: var(--wp--preset--color--fuchsia-50) !important;}.has-fuchsia-100-color{color: var(--wp--preset--color--fuchsia-100) !important;}.has-fuchsia-200-color{color: var(--wp--preset--color--fuchsia-200) !important;}.has-fuchsia-300-color{color: var(--wp--preset--color--fuchsia-300) !important;}.has-fuchsia-400-color{color: var(--wp--preset--color--fuchsia-400) !important;}.has-fuchsia-500-color{color: var(--wp--preset--color--fuchsia-500) !important;}.has-fuchsia-600-color{color: var(--wp--preset--color--fuchsia-600) !important;}.has-fuchsia-700-color{color: var(--wp--preset--color--fuchsia-700) !important;}.has-fuchsia-800-color{color: var(--wp--preset--color--fuchsia-800) !important;}.has-fuchsia-900-color{color: var(--wp--preset--color--fuchsia-900) !important;}.has-fuchsia-950-color{color: var(--wp--preset--color--fuchsia-950) !important;}.has-pink-50-color{color: var(--wp--preset--color--pink-50) !important;}.has-pink-100-color{color: var(--wp--preset--color--pink-100) !important;}.has-pink-200-color{color: var(--wp--preset--color--pink-200) !important;}.has-pink-300-color{color: var(--wp--preset--color--pink-300) !important;}.has-pink-400-color{color: var(--wp--preset--color--pink-400) !important;}.has-pink-500-color{color: var(--wp--preset--color--pink-500) !important;}.has-pink-600-color{color: var(--wp--preset--color--pink-600) !important;}.has-pink-700-color{color: var(--wp--preset--color--pink-700) !important;}.has-pink-800-color{color: var(--wp--preset--color--pink-800) !important;}.has-pink-900-color{color: var(--wp--preset--color--pink-900) !important;}.has-pink-950-color{color: var(--wp--preset--color--pink-950) !important;}.has-rose-50-color{color: var(--wp--preset--color--rose-50) !important;}.has-rose-100-color{color: var(--wp--preset--color--rose-100) !important;}.has-rose-200-color{color: var(--wp--preset--color--rose-200) !important;}.has-rose-300-color{color: var(--wp--preset--color--rose-300) !important;}.has-rose-400-color{color: var(--wp--preset--color--rose-400) !important;}.has-rose-500-color{color: var(--wp--preset--color--rose-500) !important;}.has-rose-600-color{color: var(--wp--preset--color--rose-600) !important;}.has-rose-700-color{color: var(--wp--preset--color--rose-700) !important;}.has-rose-800-color{color: var(--wp--preset--color--rose-800) !important;}.has-rose-900-color{color: var(--wp--preset--color--rose-900) !important;}.has-rose-950-color{color: var(--wp--preset--color--rose-950) !important;}.has-lightgrey-color{color: var(--wp--preset--color--lightgrey) !important;}.has-heading-color{color: var(--wp--preset--color--heading) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-inherit-background-color{background-color: var(--wp--preset--color--inherit) !important;}.has-current-background-color{background-color: var(--wp--preset--color--current) !important;}.has-transparent-background-color{background-color: var(--wp--preset--color--transparent) !important;}.has-slate-50-background-color{background-color: var(--wp--preset--color--slate-50) !important;}.has-slate-100-background-color{background-color: var(--wp--preset--color--slate-100) !important;}.has-slate-200-background-color{background-color: var(--wp--preset--color--slate-200) !important;}.has-slate-300-background-color{background-color: var(--wp--preset--color--slate-300) !important;}.has-slate-400-background-color{background-color: var(--wp--preset--color--slate-400) !important;}.has-slate-500-background-color{background-color: var(--wp--preset--color--slate-500) !important;}.has-slate-600-background-color{background-color: var(--wp--preset--color--slate-600) !important;}.has-slate-700-background-color{background-color: var(--wp--preset--color--slate-700) !important;}.has-slate-800-background-color{background-color: var(--wp--preset--color--slate-800) !important;}.has-slate-900-background-color{background-color: var(--wp--preset--color--slate-900) !important;}.has-slate-950-background-color{background-color: var(--wp--preset--color--slate-950) !important;}.has-gray-50-background-color{background-color: var(--wp--preset--color--gray-50) !important;}.has-gray-100-background-color{background-color: var(--wp--preset--color--gray-100) !important;}.has-gray-200-background-color{background-color: var(--wp--preset--color--gray-200) !important;}.has-gray-300-background-color{background-color: var(--wp--preset--color--gray-300) !important;}.has-gray-400-background-color{background-color: var(--wp--preset--color--gray-400) !important;}.has-gray-500-background-color{background-color: var(--wp--preset--color--gray-500) !important;}.has-gray-600-background-color{background-color: var(--wp--preset--color--gray-600) !important;}.has-gray-700-background-color{background-color: var(--wp--preset--color--gray-700) !important;}.has-gray-800-background-color{background-color: var(--wp--preset--color--gray-800) !important;}.has-gray-900-background-color{background-color: var(--wp--preset--color--gray-900) !important;}.has-gray-950-background-color{background-color: var(--wp--preset--color--gray-950) !important;}.has-zinc-50-background-color{background-color: var(--wp--preset--color--zinc-50) !important;}.has-zinc-100-background-color{background-color: var(--wp--preset--color--zinc-100) !important;}.has-zinc-200-background-color{background-color: var(--wp--preset--color--zinc-200) !important;}.has-zinc-300-background-color{background-color: var(--wp--preset--color--zinc-300) !important;}.has-zinc-400-background-color{background-color: var(--wp--preset--color--zinc-400) !important;}.has-zinc-500-background-color{background-color: var(--wp--preset--color--zinc-500) !important;}.has-zinc-600-background-color{background-color: var(--wp--preset--color--zinc-600) !important;}.has-zinc-700-background-color{background-color: var(--wp--preset--color--zinc-700) !important;}.has-zinc-800-background-color{background-color: var(--wp--preset--color--zinc-800) !important;}.has-zinc-900-background-color{background-color: var(--wp--preset--color--zinc-900) !important;}.has-zinc-950-background-color{background-color: var(--wp--preset--color--zinc-950) !important;}.has-neutral-50-background-color{background-color: var(--wp--preset--color--neutral-50) !important;}.has-neutral-100-background-color{background-color: var(--wp--preset--color--neutral-100) !important;}.has-neutral-200-background-color{background-color: var(--wp--preset--color--neutral-200) !important;}.has-neutral-300-background-color{background-color: var(--wp--preset--color--neutral-300) !important;}.has-neutral-400-background-color{background-color: var(--wp--preset--color--neutral-400) !important;}.has-neutral-500-background-color{background-color: var(--wp--preset--color--neutral-500) !important;}.has-neutral-600-background-color{background-color: var(--wp--preset--color--neutral-600) !important;}.has-neutral-700-background-color{background-color: var(--wp--preset--color--neutral-700) !important;}.has-neutral-800-background-color{background-color: var(--wp--preset--color--neutral-800) !important;}.has-neutral-900-background-color{background-color: var(--wp--preset--color--neutral-900) !important;}.has-neutral-950-background-color{background-color: var(--wp--preset--color--neutral-950) !important;}.has-stone-50-background-color{background-color: var(--wp--preset--color--stone-50) !important;}.has-stone-100-background-color{background-color: var(--wp--preset--color--stone-100) !important;}.has-stone-200-background-color{background-color: var(--wp--preset--color--stone-200) !important;}.has-stone-300-background-color{background-color: var(--wp--preset--color--stone-300) !important;}.has-stone-400-background-color{background-color: var(--wp--preset--color--stone-400) !important;}.has-stone-500-background-color{background-color: var(--wp--preset--color--stone-500) !important;}.has-stone-600-background-color{background-color: var(--wp--preset--color--stone-600) !important;}.has-stone-700-background-color{background-color: var(--wp--preset--color--stone-700) !important;}.has-stone-800-background-color{background-color: var(--wp--preset--color--stone-800) !important;}.has-stone-900-background-color{background-color: var(--wp--preset--color--stone-900) !important;}.has-stone-950-background-color{background-color: var(--wp--preset--color--stone-950) !important;}.has-red-50-background-color{background-color: var(--wp--preset--color--red-50) !important;}.has-red-100-background-color{background-color: var(--wp--preset--color--red-100) !important;}.has-red-200-background-color{background-color: var(--wp--preset--color--red-200) !important;}.has-red-300-background-color{background-color: var(--wp--preset--color--red-300) !important;}.has-red-400-background-color{background-color: var(--wp--preset--color--red-400) !important;}.has-red-500-background-color{background-color: var(--wp--preset--color--red-500) !important;}.has-red-600-background-color{background-color: var(--wp--preset--color--red-600) !important;}.has-red-700-background-color{background-color: var(--wp--preset--color--red-700) !important;}.has-red-800-background-color{background-color: var(--wp--preset--color--red-800) !important;}.has-red-900-background-color{background-color: var(--wp--preset--color--red-900) !important;}.has-red-950-background-color{background-color: var(--wp--preset--color--red-950) !important;}.has-orange-50-background-color{background-color: var(--wp--preset--color--orange-50) !important;}.has-orange-100-background-color{background-color: var(--wp--preset--color--orange-100) !important;}.has-orange-200-background-color{background-color: var(--wp--preset--color--orange-200) !important;}.has-orange-300-background-color{background-color: var(--wp--preset--color--orange-300) !important;}.has-orange-400-background-color{background-color: var(--wp--preset--color--orange-400) !important;}.has-orange-500-background-color{background-color: var(--wp--preset--color--orange-500) !important;}.has-orange-600-background-color{background-color: var(--wp--preset--color--orange-600) !important;}.has-orange-700-background-color{background-color: var(--wp--preset--color--orange-700) !important;}.has-orange-800-background-color{background-color: var(--wp--preset--color--orange-800) !important;}.has-orange-900-background-color{background-color: var(--wp--preset--color--orange-900) !important;}.has-orange-950-background-color{background-color: var(--wp--preset--color--orange-950) !important;}.has-amber-50-background-color{background-color: var(--wp--preset--color--amber-50) !important;}.has-amber-100-background-color{background-colo
93r: var(--wp--preset--color--amber-100) !important;}.has-amber-200-background-color{background-color: var(--wp--preset--color--amber-200) !important;}.has-amber-300-background-color{background-color: var(--wp--preset--color--amber-300) !important;}.has-amber-400-background-color{background-color: var(--wp--preset--color--amber-400) !important;}.has-amber-500-background-color{background-color: var(--wp--preset--color--amber-500) !important;}.has-amber-600-background-color{background-color: var(--wp--preset--color--amber-600) !important;}.has-amber-700-background-color{background-color: var(--wp--preset--color--amber-700) !important;}.has-amber-800-background-color{background-color: var(--wp--preset--color--amber-800) !important;}.has-amber-900-background-color{background-color: var(--wp--preset--color--amber-900) !important;}.has-amber-950-background-color{background-color: var(--wp--preset--color--amber-950) !important;}.has-yellow-50-background-color{background-color: var(--wp--preset--color--yellow-50) !important;}.has-yellow-100-background-color{background-color: var(--wp--preset--color--yellow-100) !important;}.has-yellow-200-background-color{background-color: var(--wp--preset--color--yellow-200) !important;}.has-yellow-300-background-color{background-color: var(--wp--preset--color--yellow-300) !important;}.has-yellow-400-background-color{background-color: var(--wp--preset--color--yellow-400) !important;}.has-yellow-500-background-color{background-color: var(--wp--preset--color--yellow-500) !important;}.has-yellow-600-background-color{background-color: var(--wp--preset--color--yellow-600) !important;}.has-yellow-700-background-color{background-color: var(--wp--preset--color--yellow-700) !important;}.has-yellow-800-background-color{background-color: var(--wp--preset--color--yellow-800) !important;}.has-yellow-900-background-color{background-color: var(--wp--preset--color--yellow-900) !important;}.has-yellow-950-background-color{background-color: var(--wp--preset--color--yellow-950) !important;}.has-lime-50-background-color{background-color: var(--wp--preset--color--lime-50) !important;}.has-lime-100-background-color{background-color: var(--wp--preset--color--lime-100) !important;}.has-lime-200-background-color{background-color: var(--wp--preset--color--lime-200) !important;}.has-lime-300-background-color{background-color: var(--wp--preset--color--lime-300) !important;}.has-lime-400-background-color{background-color: var(--wp--preset--color--lime-400) !important;}.has-lime-500-background-color{background-color: var(--wp--preset--color--lime-500) !important;}.has-lime-600-background-color{background-color: var(--wp--preset--color--lime-600) !important;}.has-lime-700-background-color{background-color: var(--wp--preset--color--lime-700) !important;}.has-lime-800-background-color{background-color: var(--wp--preset--color--lime-800) !important;}.has-lime-900-background-color{background-color: var(--wp--preset--color--lime-900) !important;}.has-lime-950-background-color{background-color: var(--wp--preset--color--lime-950) !important;}.has-green-50-background-color{background-color: var(--wp--preset--color--green-50) !important;}.has-green-100-background-color{background-color: var(--wp--preset--color--green-100) !important;}.has-green-200-background-color{background-color: var(--wp--preset--color--green-200) !important;}.has-green-300-background-color{background-color: var(--wp--preset--color--green-300) !important;}.has-green-400-background-color{background-color: var(--wp--preset--color--green-400) !important;}.has-green-500-background-color{background-color: var(--wp--preset--color--green-500) !important;}.has-green-600-background-color{background-color: var(--wp--preset--color--green-600) !important;}.has-green-700-background-color{background-color: var(--wp--preset--color--green-700) !important;}.has-green-800-background-color{background-color: var(--wp--preset--color--green-800) !important;}.has-green-900-background-color{background-color: var(--wp--preset--color--green-900) !important;}.has-green-950-background-color{background-color: var(--wp--preset--color--green-950) !important;}.has-emerald-50-background-color{background-color: var(--wp--preset--color--emerald-50) !important;}.has-emerald-100-background-color{background-color: var(--wp--preset--color--emerald-100) !important;}.has-emerald-200-background-color{background-color: var(--wp--preset--color--emerald-200) !important;}.has-emerald-300-background-color{background-color: var(--wp--preset--color--emerald-300) !important;}.has-emerald-400-background-color{background-color: var(--wp--preset--color--emerald-400) !important;}.has-emerald-500-background-color{background-color: var(--wp--preset--color--emerald-500) !important;}.has-emerald-600-background-color{background-color: var(--wp--preset--color--emerald-600) !important;}.has-emerald-700-background-color{background-color: var(--wp--preset--color--emerald-700) !important;}.has-emerald-800-background-color{background-color: var(--wp--preset--color--emerald-800) !important;}.has-emerald-900-background-color{background-color: var(--wp--preset--color--emerald-900) !important;}.has-emerald-950-background-color{background-color: var(--wp--preset--color--emerald-950) !important;}.has-teal-50-background-color{background-color: var(--wp--preset--color--teal-50) !important;}.has-teal-100-background-color{background-color: var(--wp--preset--color--teal-100) !important;}.has-teal-200-background-color{background-color: var(--wp--preset--color--teal-200) !important;}.has-teal-300-background-color{background-color: var(--wp--preset--color--teal-300) !important;}.has-teal-400-background-color{background-color: var(--wp--preset--color--teal-400) !important;}.has-teal-500-background-color{background-color: var(--wp--preset--color--teal-500) !important;}.has-teal-600-background-color{background-color: var(--wp--preset--color--teal-600) !important;}.has-teal-700-background-color{background-color: var(--wp--preset--color--teal-700) !important;}.has-teal-800-background-color{background-color: var(--wp--preset--color--teal-800) !important;}.has-teal-900-background-color{background-color: var(--wp--preset--color--teal-900) !important;}.has-teal-950-background-color{background-color: var(--wp--preset--color--teal-950) !important;}.has-cyan-50-background-color{background-color: var(--wp--preset--color--cyan-50) !important;}.has-cyan-100-background-color{background-color: var(--wp--preset--color--cyan-100) !important;}.has-cyan-200-background-color{background-color: var(--wp--preset--color--cyan-200) !important;}.has-cyan-300-background-color{background-color: var(--wp--preset--color--cyan-300) !important;}.has-cyan-400-background-color{background-color: var(--wp--preset--color--cyan-400) !important;}.has-cyan-500-background-color{background-color: var(--wp--preset--color--cyan-500) !important;}.has-cyan-600-background-color{background-color: var(--wp--preset--color--cyan-600) !important;}.has-cyan-700-background-color{background-color: var(--wp--preset--color--cyan-700) !important;}.has-cyan-800-background-color{background-color: var(--wp--preset--color--cyan-800) !important;}.has-cyan-900-background-color{background-color: var(--wp--preset--color--cyan-900) !important;}.has-cyan-950-background-color{background-color: var(--wp--preset--color--cyan-950) !important;}.has-sky-50-background-color{background-color: var(--wp--preset--color--sky-50) !important;}.has-sky-100-background-color{background-color: var(--wp--preset--color--sky-100) !important;}.has-sky-200-background-color{background-color: var(--wp--preset--color--sky-200) !important;}.has-sky-300-background-color{background-color: var(--wp--preset--color--sky-300) !important;}.has-sky-400-background-color{background-color: var(--wp--preset--color--sky-400) !important;}.has-sky-500-background-color{background-color: var(--wp--preset--color--sky-500) !important;}.has-sky-600-background-color{background-color: var(--wp--preset--color--sky-600) !important;}.has-sky-700-background-color{background-color: var(--wp--preset--color--sky-700) !important;}.has-sky-800-background-color{background-color: var(--wp--preset--color--sky-800) !important;}.has-sky-900-background-color{background-color: var(--wp--preset--color--sky-900) !important;}.has-sky-950-background-color{background-color: var(--wp--preset--color--sky-950) !important;}.has-blue-50-background-color{background-color: var(--wp--preset--color--blue-50) !important;}.has-blue-100-background-color{background-color: var(--wp--preset--color--blue-100) !important;}.has-blue-200-background-color{background-color: var(--wp--preset--color--blue-200) !important;}.has-blue-300-background-color{background-color: var(--wp--preset--color--blue-300) !important;}.has-blue-400-background-color{background-color: var(--wp--preset--color--blue-400) !important;}.has-blue-500-background-color{background-color: var(--wp--preset--color--blue-500) !important;}.has-blue-600-background-color{background-color: var(--wp--preset--color--blue-600) !important;}.has-blue-700-background-color{background-color: var(--wp--preset--color--blue-700) !important;}.has-blue-800-background-color{background-color: var(--wp--preset--color--blue-800) !important;}.has-blue-900-background-color{background-color: var(--wp--preset--color--blue-900) !important;}.has-blue-950-background-color{background-color: var(--wp--preset--color--blue-950) !important;}.has-indigo-50-background-color{background-color: var(--wp--preset--color--indigo-50) !important;}.has-indigo-100-background-color{background-color: var(--wp--preset--color--indigo-100) !important;}.has-indigo-200-background-color{background-color: var(--wp--preset--color--indigo-200) !important;}.has-indigo-300-background-color{background-color: var(--wp--preset--color--indigo-300) !important;}.has-indigo-400-background-color{background-color: var(--wp--preset--color--indigo-400) !important;}.has-indigo-500-background-color{background-color: var(--wp--preset--color--indigo-500) !important;}.has-indigo-600-background-color{background-color: var(--wp--preset--color--indigo-600) !important;}.has-indigo-700-background-color{background-color: var(--wp--preset--color--indigo-700) !important;}.has-indigo-800-background-color{background-color: var(--wp--preset--color--indigo-800) !important;}.has-indigo-900-background-color{background-color: var(--wp--preset--color--indigo-900) !important;}.has-indigo-950-background-color{background-color: var(--wp--preset--color--indigo-950) !important;}.has-violet-50-background-color{background-color: var(--wp--preset--color--violet-50) !important;}.has-violet-100-background-color{background-color: var(--wp--preset--color--violet-100) !important;}.has-violet-200-background-color{background-color: var(--wp--preset--color--violet-200) !important;}.has-violet-300-background-color{background-color: var(--wp--preset--color--violet-300) !important;}.has-violet-400-background-color{background-color: var(--wp--preset--color--violet-400) !important;}.has-violet-500-background-color{background-color: var(--wp--preset--color--violet-500) !important;}.has-violet-600-background-color{background-color: var(--wp--preset--color--violet-600) !important;}.has-violet-700-background-color{background-color: var(--wp--preset--color--violet-700) !important;}.has-violet-800-background-color{background-color: var(--wp--preset--color--violet-800) !important;}.has-violet-900-background-color{background-color: var(--wp--preset--color--violet-900) !important;}.has-violet-950-background-color{background-color: var(--wp--preset--color--violet-950) !important;}.has-purple-50-background-color{background-color: var(--wp--preset--color--purple-50) !important;}.has-purple-100-background-color{background-color: var(--wp--preset--color--purple-100) !important;}.has-purple-200-background-color{background-color: var(--wp--preset--color--purple-200) !important;}.has-purple-300-background-color{background-color: var(--wp--preset--color--purple-300) !important;}.has-purple-400-background-color{background-color: var(--wp--preset--color--purple-400) !important;}.has-purple-500-background-color{background-color: var(--wp--preset--color--purple-500) !important;}.has-purple-600-background-color{background-color: var(--wp--preset--color--purple-600) !important;}.has-purple-700-background-color{background-color: var(--wp--preset--color--purple-700) !important;}.has-purple-800-background-color{background-color: var(--wp--preset--color--purple-800) !important;}.has-purple-900-background-color{background-color: var(--wp--preset--color--purple-900) !important;}.has-purple-950-background-color{background-color: var(--wp--preset--color--purple-950) !important;}.has-fuchsia-50-background-color{background-color: var(--wp--preset--color--fuchsia-50) !important;}.has-fuchsia-100-background-color{background-color: var(--wp--preset--color--fuchsia-100) !important;}.has-fuchsia-200-background-color{background-color: var(--wp--preset--color--fuchsia-200) !important;}.has-fuchsia-300-background-color{background-color: var(--wp--preset--color--fuchsia-300) !important;}.has-fuchsia-400-background-color{background-color: var(--wp--preset--color--fuchsia-400) !important;}.has-fuchsia-500-background-color{background-color: var(--wp--preset--color--fuchsia-500) !important;}.has-fuchsia-600-background-color{background-color: var(--wp--preset--color--fuchsia-600) !important;}.has-fuchsia-700-background-color{background-color: var(--wp--preset--color--fuchsia-700) !important;}.has-fuchsia-800-background-color{background-color: var(--wp--preset--color--fuchsia-800) !important;}.has-fuchsia-900-background-color{background-color: var(--wp--preset--color--fuchsia-900) !important;}.has-fuchsia-950-background-color{background-color: var(--wp--preset--color--fuchsia-950) !important;}.has-pink-50-background-color{background-color: var(--wp--preset--color--pink-50) !important;}.has-pink-100-background-color{background-color: var(--wp--preset--color--pink-100) !important;}.has-pink-200-background-color{background-color: var(--wp--preset--color--pink-200) !important;}.has-pink-300-background-color{background-color: var(--wp--preset--color--pink-300) !important;}.has-pink-400-background-color{background-color: var(--wp--preset--color--pink-400) !important;}.has-pink-500-background-color{background-color: var(--wp--preset--color--pink-500) !important;}.has-pink-600-background-color{background-color: var(--wp--preset--color--pink-600) !important;}.has-pink-700-background-color{background-color: var(--wp--preset--color--pink-700) !important;}.has-pink-800-background-color{background-color: var(--wp--preset--color--pink-800) !important;}.has-pink-900-background-color{background-color: var(--wp--preset--color--pink-900) !important;}.has-pink-950-background-color{background-color: var(--wp--preset--color--pink-950) !important;}.has-rose-50-background-color{background-color: var(--wp--preset--color--rose-50) !important;}.has-rose-100-background-color{background-color: var(--wp--preset--color--rose-100) !important;}.has-rose-200-background-color{background-color: var(--wp--preset--color--rose-200) !important;}.has-rose-300-background-color{background-color: var(--wp--preset--color--rose-300) !important;}.has-rose-400-background-color{background-color: var(--wp--preset--color--rose-400) !important;}.has-rose-500-background-color{background-color: var(--wp--preset--color--rose-500) !important;}.has-rose-600-background-color{background-color: var(--wp--preset--color--rose-600) !important;}.has-rose-700-background-color{background-color: var(--wp--preset--color--rose-700) !important;}.has-rose-800-background-color{background-color: var(--wp--preset--color--rose-800) !important;}.has-rose-900-background-color{background-color: var(--wp--preset--color--rose-900) !important;}.has-rose-950-background-color{background-color: var(--wp--preset--color--rose-950) !important;}.has-lightgrey-background-color{background-color: var(--wp--preset--color--lightgrey) !important;}.has-heading-background-color{background-color: var(--wp--preset--color--heading) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-whit
93e-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-inherit-border-color{border-color: var(--wp--preset--color--inherit) !important;}.has-current-border-color{border-color: var(--wp--preset--color--current) !important;}.has-transparent-border-color{border-color: var(--wp--preset--color--transparent) !important;}.has-slate-50-border-color{border-color: var(--wp--preset--color--slate-50) !important;}.has-slate-100-border-color{border-color: var(--wp--preset--color--slate-100) !important;}.has-slate-200-border-color{border-color: var(--wp--preset--color--slate-200) !important;}.has-slate-300-border-color{border-color: var(--wp--preset--color--slate-300) !important;}.has-slate-400-border-color{border-color: var(--wp--preset--color--slate-400) !important;}.has-slate-500-border-color{border-color: var(--wp--preset--color--slate-500) !important;}.has-slate-600-border-color{border-color: var(--wp--preset--color--slate-600) !important;}.has-slate-700-border-color{border-color: var(--wp--preset--color--slate-700) !important;}.has-slate-800-border-color{border-color: var(--wp--preset--color--slate-800) !important;}.has-slate-900-border-color{border-color: var(--wp--preset--color--slate-900) !important;}.has-slate-950-border-color{border-color: var(--wp--preset--color--slate-950) !important;}.has-gray-50-border-color{border-color: var(--wp--preset--color--gray-50) !important;}.has-gray-100-border-color{border-color: var(--wp--preset--color--gray-100) !important;}.has-gray-200-border-color{border-color: var(--wp--preset--color--gray-200) !important;}.has-gray-300-border-color{border-color: var(--wp--preset--color--gray-300) !important;}.has-gray-400-border-color{border-color: var(--wp--preset--color--gray-400) !important;}.has-gray-500-border-color{border-color: var(--wp--preset--color--gray-500) !important;}.has-gray-600-border-color{border-color: var(--wp--preset--color--gray-600) !important;}.has-gray-700-border-color{border-color: var(--wp--preset--color--gray-700) !important;}.has-gray-800-border-color{border-color: var(--wp--preset--color--gray-800) !important;}.has-gray-900-border-color{border-color: var(--wp--preset--color--gray-900) !important;}.has-gray-950-border-color{border-color: var(--wp--preset--color--gray-950) !important;}.has-zinc-50-border-color{border-color: var(--wp--preset--color--zinc-50) !important;}.has-zinc-100-border-color{border-color: var(--wp--preset--color--zinc-100) !important;}.has-zinc-200-border-color{border-color: var(--wp--preset--color--zinc-200) !important;}.has-zinc-300-border-color{border-color: var(--wp--preset--color--zinc-300) !important;}.has-zinc-400-border-color{border-color: var(--wp--preset--color--zinc-400) !important;}.has-zinc-500-border-color{border-color: var(--wp--preset--color--zinc-500) !important;}.has-zinc-600-border-color{border-color: var(--wp--preset--color--zinc-600) !important;}.has-zinc-700-border-color{border-color: var(--wp--preset--color--zinc-700) !important;}.has-zinc-800-border-color{border-color: var(--wp--preset--color--zinc-800) !important;}.has-zinc-900-border-color{border-color: var(--wp--preset--color--zinc-900) !important;}.has-zinc-950-border-color{border-color: var(--wp--preset--color--zinc-950) !important;}.has-neutral-50-border-color{border-color: var(--wp--preset--color--neutral-50) !important;}.has-neutral-100-border-color{border-color: var(--wp--preset--color--neutral-100) !important;}.has-neutral-200-border-color{border-color: var(--wp--preset--color--neutral-200) !important;}.has-neutral-300-border-color{border-color: var(--wp--preset--color--neutral-300) !important;}.has-neutral-400-border-color{border-color: var(--wp--preset--color--neutral-400) !important;}.has-neutral-500-border-color{border-color: var(--wp--preset--color--neutral-500) !important;}.has-neutral-600-border-color{border-color: var(--wp--preset--color--neutral-600) !important;}.has-neutral-700-border-color{border-color: var(--wp--preset--color--neutral-700) !important;}.has-neutral-800-border-color{border-color: var(--wp--preset--color--neutral-800) !important;}.has-neutral-900-border-color{border-color: var(--wp--preset--color--neutral-900) !important;}.has-neutral-950-border-color{border-color: var(--wp--preset--color--neutral-950) !important;}.has-stone-50-border-color{border-color: var(--wp--preset--color--stone-50) !important;}.has-stone-100-border-color{border-color: var(--wp--preset--color--stone-100) !important;}.has-stone-200-border-color{border-color: var(--wp--preset--color--stone-200) !important;}.has-stone-300-border-color{border-color: var(--wp--preset--color--stone-300) !important;}.has-stone-400-border-color{border-color: var(--wp--preset--color--stone-400) !important;}.has-stone-500-border-color{border-color: var(--wp--preset--color--stone-500) !important;}.has-stone-600-border-color{border-color: var(--wp--preset--color--stone-600) !important;}.has-stone-700-border-color{border-color: var(--wp--preset--color--stone-700) !important;}.has-stone-800-border-color{border-color: var(--wp--preset--color--stone-800) !important;}.has-stone-900-border-color{border-color: var(--wp--preset--color--stone-900) !important;}.has-stone-950-border-color{border-color: var(--wp--preset--color--stone-950) !important;}.has-red-50-border-color{border-color: var(--wp--preset--color--red-50) !important;}.has-red-100-border-color{border-color: var(--wp--preset--color--red-100) !important;}.has-red-200-border-color{border-color: var(--wp--preset--color--red-200) !important;}.has-red-300-border-color{border-color: var(--wp--preset--color--red-300) !important;}.has-red-400-border-color{border-color: var(--wp--preset--color--red-400) !important;}.has-red-500-border-color{border-color: var(--wp--preset--color--red-500) !important;}.has-red-600-border-color{border-color: var(--wp--preset--color--red-600) !important;}.has-red-700-border-color{border-color: var(--wp--preset--color--red-700) !important;}.has-red-800-border-color{border-color: var(--wp--preset--color--red-800) !important;}.has-red-900-border-color{border-color: var(--wp--preset--color--red-900) !important;}.has-red-950-border-color{border-color: var(--wp--preset--color--red-950) !important;}.has-orange-50-border-color{border-color: var(--wp--preset--color--orange-50) !important;}.has-orange-100-border-color{border-color: var(--wp--preset--color--orange-100) !important;}.has-orange-200-border-color{border-color: var(--wp--preset--color--orange-200) !important;}.has-orange-300-border-color{border-color: var(--wp--preset--color--orange-300) !important;}.has-orange-400-border-color{border-color: var(--wp--preset--color--orange-400) !important;}.has-orange-500-border-color{border-color: var(--wp--preset--color--orange-500) !important;}.has-orange-600-border-color{border-color: var(--wp--preset--color--orange-600) !important;}.has-orange-700-border-color{border-color: var(--wp--preset--color--orange-700) !important;}.has-orange-800-border-color{border-color: var(--wp--preset--color--orange-800) !important;}.has-orange-900-border-color{border-color: var(--wp--preset--color--orange-900) !important;}.has-orange-950-border-color{border-color: var(--wp--preset--color--orange-950) !important;}.has-amber-50-border-color{border-color: var(--wp--preset--color--amber-50) !important;}.has-amber-100-border-color{border-color: var(--wp--preset--color--amber-100) !important;}.has-amber-200-border-color{border-color: var(--wp--preset--color--amber-200) !important;}.has-amber-300-border-color{border-color: var(--wp--preset--color--amber-300) !important;}.has-amber-400-border-color{border-color: var(--wp--preset--color--amber-400) !important;}.has-amber-500-border-color{border-color: var(--wp--preset--color--amber-500) !important;}.has-amber-600-border-color{border-color: var(--wp--preset--color--amber-600) !important;}.has-amber-700-border-color{border-color: var(--wp--preset--color--amber-700) !important;}.has-amber-800-border-color{border-color: var(--wp--preset--color--amber-800) !important;}.has-amber-900-border-color{border-color: var(--wp--preset--color--amber-900) !important;}.has-amber-950-border-color{border-color: var(--wp--preset--color--amber-950) !important;}.has-yellow-50-border-color{border-color: var(--wp--preset--color--yellow-50) !important;}.has-yellow-100-border-color{border-color: var(--wp--preset--color--yellow-100) !important;}.has-yellow-200-border-color{border-color: var(--wp--preset--color--yellow-200) !important;}.has-yellow-300-border-color{border-color: var(--wp--preset--color--yellow-300) !important;}.has-yellow-400-border-color{border-color: var(--wp--preset--color--yellow-400) !important;}.has-yellow-500-border-color{border-color: var(--wp--preset--color--yellow-500) !important;}.has-yellow-600-border-color{border-color: var(--wp--preset--color--yellow-600) !important;}.has-yellow-700-border-color{border-color: var(--wp--preset--color--yellow-700) !important;}.has-yellow-800-border-color{border-color: var(--wp--preset--color--yellow-800) !important;}.has-yellow-900-border-color{border-color: var(--wp--preset--color--yellow-900) !important;}.has-yellow-950-border-color{border-color: var(--wp--preset--color--yellow-950) !important;}.has-lime-50-border-color{border-color: var(--wp--preset--color--lime-50) !important;}.has-lime-100-border-color{border-color: var(--wp--preset--color--lime-100) !important;}.has-lime-200-border-color{border-color: var(--wp--preset--color--lime-200) !important;}.has-lime-300-border-color{border-color: var(--wp--preset--color--lime-300) !important;}.has-lime-400-border-color{border-color: var(--wp--preset--color--lime-400) !important;}.has-lime-500-border-color{border-color: var(--wp--preset--color--lime-500) !important;}.has-lime-600-border-color{border-color: var(--wp--preset--color--lime-600) !important;}.has-lime-700-border-color{border-color: var(--wp--preset--color--lime-700) !important;}.has-lime-800-border-color{border-color: var(--wp--preset--color--lime-800) !important;}.has-lime-900-border-color{border-color: var(--wp--preset--color--lime-900) !important;}.has-lime-950-border-color{border-color: var(--wp--preset--color--lime-950) !important;}.has-green-50-border-color{border-color: var(--wp--preset--color--green-50) !important;}.has-green-100-border-color{border-color: var(--wp--preset--color--green-100) !important;}.has-green-200-border-color{border-color: var(--wp--preset--color--green-200) !important;}.has-green-300-border-color{border-color: var(--wp--preset--color--green-300) !important;}.has-green-400-border-color{border-color: var(--wp--preset--color--green-400) !important;}.has-green-500-border-color{border-color: var(--wp--preset--color--green-500) !important;}.has-green-600-border-color{border-color: var(--wp--preset--color--green-600) !important;}.has-green-700-border-color{border-color: var(--wp--preset--color--green-700) !important;}.has-green-800-border-color{border-color: var(--wp--preset--color--green-800) !important;}.has-green-900-border-color{border-color: var(--wp--preset--color--green-900) !important;}.has-green-950-border-color{border-color: var(--wp--preset--color--green-950) !important;}.has-emerald-50-border-color{border-color: var(--wp--preset--color--emerald-50) !important;}.has-emerald-100-border-color{border-color: var(--wp--preset--color--emerald-100) !important;}.has-emerald-200-border-color{border-color: var(--wp--preset--color--emerald-200) !important;}.has-emerald-300-border-color{border-color: var(--wp--preset--color--emerald-300) !important;}.has-emerald-400-border-color{border-color: var(--wp--preset--color--emerald-400) !important;}.has-emerald-500-border-color{border-color: var(--wp--preset--color--emerald-500) !important;}.has-emerald-600-border-color{border-color: var(--wp--preset--color--emerald-600) !important;}.has-emerald-700-border-color{border-color: var(--wp--preset--color--emerald-700) !important;}.has-emerald-800-border-color{border-color: var(--wp--preset--color--emerald-800) !important;}.has-emerald-900-border-color{border-color: var(--wp--preset--color--emerald-900) !important;}.has-emerald-950-border-color{border-color: var(--wp--preset--color--emerald-950) !important;}.has-teal-50-border-color{border-color: var(--wp--preset--color--teal-50) !important;}.has-teal-100-border-color{border-color: var(--wp--preset--color--teal-100) !important;}.has-teal-200-border-color{border-color: var(--wp--preset--color--teal-200) !important;}.has-teal-300-border-color{border-color: var(--wp--preset--color--teal-300) !important;}.has-teal-400-border-color{border-color: var(--wp--preset--color--teal-400) !important;}.has-teal-500-border-color{border-color: var(--wp--preset--color--teal-500) !important;}.has-teal-600-border-color{border-color: var(--wp--preset--color--teal-600) !important;}.has-teal-700-border-color{border-color: var(--wp--preset--color--teal-700) !important;}.has-teal-800-border-color{border-color: var(--wp--preset--color--teal-800) !important;}.has-teal-900-border-color{border-color: var(--wp--preset--color--teal-900) !important;}.has-teal-950-border-color{border-color: var(--wp--preset--color--teal-950) !important;}.has-cyan-50-border-color{border-color: var(--wp--preset--color--cyan-50) !important;}.has-cyan-100-border-color{border-color: var(--wp--preset--color--cyan-100) !important;}.has-cyan-200-border-color{border-color: var(--wp--preset--color--cyan-200) !important;}.has-cyan-300-border-color{border-color: var(--wp--preset--color--cyan-300) !important;}.has-cyan-400-border-color{border-color: var(--wp--preset--color--cyan-400) !important;}.has-cyan-500-border-color{border-color: var(--wp--preset--color--cyan-500) !important;}.has-cyan-600-border-color{border-color: var(--wp--preset--color--cyan-600) !important;}.has-cyan-700-border-color{border-color: var(--wp--preset--color--cyan-700) !important;}.has-cyan-800-border-color{border-color: var(--wp--preset--color--cyan-800) !important;}.has-cyan-900-border-color{border-color: var(--wp--preset--color--cyan-900) !important;}.has-cyan-950-border-color{border-color: var(--wp--preset--color--cyan-950) !important;}.has-sky-50-border-color{border-color: var(--wp--preset--color--sky-50) !important;}.has-sky-100-border-color{border-color: var(--wp--preset--color--sky-100) !important;}.has-sky-200-border-color{border-color: var(--wp--preset--color--sky-200) !important;}.has-sky-300-border-color{border-color: var(--wp--preset--color--sky-300) !important;}.has-sky-400-border-color{border-color: var(--wp--preset--color--sky-400) !important;}.has-sky-500-border-color{border-color: var(--wp--preset--color--sky-500) !important;}.has-sky-600-border-color{border-color: var(--wp--preset--color--sky-600) !important;}.has-sky-700-border-color{border-color: var(--wp--preset--color--sky-700) !important;}.has-sky-800-border-color{border-color: var(--wp--preset--color--sky-800) !important;}.has-sky-900-border-color{border-color: var(--wp--preset--color--sky-900) !important;}.has-sky-950-border-color{border-color: var(--wp--preset--color--sky-950) !important;}.has-blue-50-border-color{border-color: var(--wp--preset--color--blue-50) !important;}.has-blue-100-border-color{border-color: var(--wp--preset--color--blue-100) !important;}.has-blue-200-border-color{border-color: var(--wp--preset--color--blue-200) !important;}.has-blue-300-border-color{border-color: var(--wp--preset--color--blue-300) !important;}.has-blue-400-border-color{bo
93rder-color: var(--wp--preset--color--blue-400) !important;}.has-blue-500-border-color{border-color: var(--wp--preset--color--blue-500) !important;}.has-blue-600-border-color{border-color: var(--wp--preset--color--blue-600) !important;}.has-blue-700-border-color{border-color: var(--wp--preset--color--blue-700) !important;}.has-blue-800-border-color{border-color: var(--wp--preset--color--blue-800) !important;}.has-blue-900-border-color{border-color: var(--wp--preset--color--blue-900) !important;}.has-blue-950-border-color{border-color: var(--wp--preset--color--blue-950) !important;}.has-indigo-50-border-color{border-color: var(--wp--preset--color--indigo-50) !important;}.has-indigo-100-border-color{border-color: var(--wp--preset--color--indigo-100) !important;}.has-indigo-200-border-color{border-color: var(--wp--preset--color--indigo-200) !important;}.has-indigo-300-border-color{border-color: var(--wp--preset--color--indigo-300) !important;}.has-indigo-400-border-color{border-color: var(--wp--preset--color--indigo-400) !important;}.has-indigo-500-border-color{border-color: var(--wp--preset--color--indigo-500) !important;}.has-indigo-600-border-color{border-color: var(--wp--preset--color--indigo-600) !important;}.has-indigo-700-border-color{border-color: var(--wp--preset--color--indigo-700) !important;}.has-indigo-800-border-color{border-color: var(--wp--preset--color--indigo-800) !important;}.has-indigo-900-border-color{border-color: var(--wp--preset--color--indigo-900) !important;}.has-indigo-950-border-color{border-color: var(--wp--preset--color--indigo-950) !important;}.has-violet-50-border-color{border-color: var(--wp--preset--color--violet-50) !important;}.has-violet-100-border-color{border-color: var(--wp--preset--color--violet-100) !important;}.has-violet-200-border-color{border-color: var(--wp--preset--color--violet-200) !important;}.has-violet-300-border-color{border-color: var(--wp--preset--color--violet-300) !important;}.has-violet-400-border-color{border-color: var(--wp--preset--color--violet-400) !important;}.has-violet-500-border-color{border-color: var(--wp--preset--color--violet-500) !important;}.has-violet-600-border-color{border-color: var(--wp--preset--color--violet-600) !important;}.has-violet-700-border-color{border-color: var(--wp--preset--color--violet-700) !important;}.has-violet-800-border-color{border-color: var(--wp--preset--color--violet-800) !important;}.has-violet-900-border-color{border-color: var(--wp--preset--color--violet-900) !important;}.has-violet-950-border-color{border-color: var(--wp--preset--color--violet-950) !important;}.has-purple-50-border-color{border-color: var(--wp--preset--color--purple-50) !important;}.has-purple-100-border-color{border-color: var(--wp--preset--color--purple-100) !important;}.has-purple-200-border-color{border-color: var(--wp--preset--color--purple-200) !important;}.has-purple-300-border-color{border-color: var(--wp--preset--color--purple-300) !important;}.has-purple-400-border-color{border-color: var(--wp--preset--color--purple-400) !important;}.has-purple-500-border-color{border-color: var(--wp--preset--color--purple-500) !important;}.has-purple-600-border-color{border-color: var(--wp--preset--color--purple-600) !important;}.has-purple-700-border-color{border-color: var(--wp--preset--color--purple-700) !important;}.has-purple-800-border-color{border-color: var(--wp--preset--color--purple-800) !important;}.has-purple-900-border-color{border-color: var(--wp--preset--color--purple-900) !important;}.has-purple-950-border-color{border-color: var(--wp--preset--color--purple-950) !important;}.has-fuchsia-50-border-color{border-color: var(--wp--preset--color--fuchsia-50) !important;}.has-fuchsia-100-border-color{border-color: var(--wp--preset--color--fuchsia-100) !important;}.has-fuchsia-200-border-color{border-color: var(--wp--preset--color--fuchsia-200) !important;}.has-fuchsia-300-border-color{border-color: var(--wp--preset--color--fuchsia-300) !important;}.has-fuchsia-400-border-color{border-color: var(--wp--preset--color--fuchsia-400) !important;}.has-fuchsia-500-border-color{border-color: var(--wp--preset--color--fuchsia-500) !important;}.has-fuchsia-600-border-color{border-color: var(--wp--preset--color--fuchsia-600) !important;}.has-fuchsia-700-border-color{border-color: var(--wp--preset--color--fuchsia-700) !important;}.has-fuchsia-800-border-color{border-color: var(--wp--preset--color--fuchsia-800) !important;}.has-fuchsia-900-border-color{border-color: var(--wp--preset--color--fuchsia-900) !important;}.has-fuchsia-950-border-color{border-color: var(--wp--preset--color--fuchsia-950) !important;}.has-pink-50-border-color{border-color: var(--wp--preset--color--pink-50) !important;}.has-pink-100-border-color{border-color: var(--wp--preset--color--pink-100) !important;}.has-pink-200-border-color{border-color: var(--wp--preset--color--pink-200) !important;}.has-pink-300-border-color{border-color: var(--wp--preset--color--pink-300) !important;}.has-pink-400-border-color{border-color: var(--wp--preset--color--pink-400) !important;}.has-pink-500-border-color{border-color: var(--wp--preset--color--pink-500) !important;}.has-pink-600-border-color{border-color: var(--wp--preset--color--pink-600) !important;}.has-pink-700-border-color{border-color: var(--wp--preset--color--pink-700) !important;}.has-pink-800-border-color{border-color: var(--wp--preset--color--pink-800) !important;}.has-pink-900-border-color{border-color: var(--wp--preset--color--pink-900) !important;}.has-pink-950-border-color{border-color: var(--wp--preset--color--pink-950) !important;}.has-rose-50-border-color{border-color: var(--wp--preset--color--rose-50) !important;}.has-rose-100-border-color{border-color: var(--wp--preset--color--rose-100) !important;}.has-rose-200-border-color{border-color: var(--wp--preset--color--rose-200) !important;}.has-rose-300-border-color{border-color: var(--wp--preset--color--rose-300) !important;}.has-rose-400-border-color{border-color: var(--wp--preset--color--rose-400) !important;}.has-rose-500-border-color{border-color: var(--wp--preset--color--rose-500) !important;}.has-rose-600-border-color{border-color: var(--wp--preset--color--rose-600) !important;}.has-rose-700-border-color{border-color: var(--wp--preset--color--rose-700) !important;}.has-rose-800-border-color{border-color: var(--wp--preset--color--rose-800) !important;}.has-rose-900-border-color{border-color: var(--wp--preset--color--rose-900) !important;}.has-rose-950-border-color{border-color: var(--wp--preset--color--rose-950) !important;}.has-lightgrey-border-color{border-color: var(--wp--preset--color--lightgrey) !important;}.has-heading-border-color{border-color: var(--wp--preset--color--heading) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
93.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xs-font-size{font-size: var(--wp--preset--font-size--xs) !important;}.has-sm-font-size{font-size: var(--wp--preset--font-size--sm) !important;}.has-base-font-size{font-size: var(--wp--preset--font-size--base) !important;}.has-lg-font-size{font-size: var(--wp--preset--font-size--lg) !important;}.has-xl-font-size{font-size: var(--wp--preset--font-size--xl) !important;}.has-2-xl-font-size{font-size: var(--wp--preset--font-size--2-xl) !important;}.has-3-xl-font-size{font-size: var(--wp--preset--font-size--3-xl) !important;}.has-4-xl-font-size{font-size: var(--wp--preset--font-size--4-xl) !important;}.has-5-xl-font-size{font-size: var(--wp--preset--font-size--5-xl) !important;}.has-6-xl-font-size{font-size: var(--wp--preset--font-size--6-xl) !important;}.has-7-xl-font-size{font-size: var(--wp--preset--font-size--7-xl) !important;}.has-8-xl-font-size{font-size: var(--wp--preset--font-size--8-xl) !important;}.has-9-xl-font-size{font-size: var(--wp--preset--font-size--9-xl) !important;}.has-10-px-font-size{font-size: var(--wp--preset--font-size--10-px) !important;}.has-18-px-font-size{font-size: var(--wp--preset--font-size--18-px) !important;}.has-proxima-nova-font-family{font-family: var(--wp--preset--font-family--proxima-nova) !important;}
94:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
95:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
96:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}
97</style>
98<link rel='stylesheet' id='cmplz-general-css' href='https://www.shootinguk.co.uk/app/plugins/complianz-gdpr/assets/css/cookieblocker.min.css?ver=1739374094' media='all' />
99<link rel='stylesheet' id='dashicons-css' href='https://gundog-journal.com/wp-includes/css/dashicons.min.css?ver=6.7.2' media='all' />
100<link rel='stylesheet' id='search-filter-plugin-styles-css' href='https://www.shootinguk.co.uk/app/cache/background-css/2/www.shootinguk.co.uk/app/plugins/search-filter-pro/public/assets/css/search-filter.min.css?ver=2.5.19&wpr_t=1790929966' media='all' />
101<link rel='stylesheet' id='wppopups-base-css' href='https://www.shootinguk.co.uk/app/plugins/wp-popups-lite/src/assets/css/wppopups-base.css?ver=2.2.0.2' media='all' />
102<link rel='stylesheet' id='flowbite-css-css' href='https://www.shootinguk.co.uk/app/themes/roots-sage/resources/styles/flowbite/flowbite.min.css' media='all' />
103<link rel='stylesheet' id='swiper-css-css' href='https://www.shootinguk.co.uk/app/themes/roots-sage/resources/styles/swiper/swiper.min.css' media='all' />
104<link rel='stylesheet' id='app/0-css' href='https://www.shootinguk.co.uk/app/themes/roots-sage/public/css/app.e0d098.css' media='all' />
105<link rel='stylesheet' id='gundog-fonts-css' href='https://www.shootinguk.co.uk/app/themes/roots-sage/resources/styles/gundog-fonts.css?ver=1790078160' media='all' />
106<style id="tws-initials-avatar-css" data-tws-version="1.33.0">.tws-initials-avatar{display:inline-grid;place-items:center;border-radius:50%;
106width:var(--tws-avatar, var(--tws-avatar-asked, 96px));height:var(--tws-avatar, var(--tws-avatar-asked, 96px));font-size:calc(var(--tws-avatar, var(--tws-avatar-asked, 96px)) * 0.42);background:#CE101E;background:rgb(var(--color-primary, 206 16 30));color:#fff;font-weight:800;line-height:1;letter-spacing:.02em;overflow:hidden;font-family:inherit;vertical-align:middle;flex-shrink:0}@supports (color: lch(from red l c h)){.tws-initials-avatar{color:lch(from rgb(var(--color-primary, 206 16 30)) calc((49 - l) * infinity) 0 0)}}#wpadminbar .tws-initials-avatar{display:inline-grid;place-items:center;box-sizing:border-box;width:20px;height:20px;font-size:9px;line-height:1;letter-spacing:0;border:1px solid #2c353b;border-radius:50%;overflow:hidden;vertical-align:middle;margin:-4px 0 0 6px;float:none}#wpadminbar #wp-admin-bar-user-info .tws-initials-avatar{position:absolute;left:-72px;top:4px;width:64px;height:64px;font-size:27px;border:0;margin:0}</style>
106<script src="https://gundog-journal.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 106
106
107<script id="search-filter-plugin-build-js-extra">
108var SF_LDATA = {"ajax_url":"https:\/\/gundog-journal.com\/wp-admin\/admin-ajax.php","home_url":"https:\/\/gundog-journal.com\/","extensions":[]};
109</script>
vendor: 1 bytes, line 109
109
110<script src="https://www.shootinguk.co.uk/app/plugins/search-filter-pro/public/assets/js/search-filter-build.min.js?ver=2.5.19" id="search-filter-plugin-build-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 110
110
111<script src="https://www.shootinguk.co.uk/app/plugins/search-filter-pro/public/assets/js/chosen.jquery.min.js?ver=2.5.19" id="search-filter-plugin-chosen-js" data-rocket-defer defer></script>
111
112	<style id="tws-byline-css" data-tws-version="1.33.0">
113	/* The photograph stands outside the ruled bar rather than inside it. The rules then only have
114	   to clear the name and the date, so the bar is shallower at 60px than the 68px it was, and
115	   the circle can go to 76px - a third bigger than the 56px it was - without the block eating
116	   much more of the page. The rules are drawn as pseudo-elements rather than as borders so the
117	   picture can be lifted above them: each starts at the middle of the circle and is hidden
118	   behind it until it clears the edge, so the rules appear to come out of the sides of the
119	   picture with nothing showing to the left of it. Starting them at the centre rather than at
120	   the left edge is what keeps them tucked away - a chord across a circle always covers the
121	   centre, whatever the diameter. */
122	.tws-byline{ position:relative; display:flex; justify-content:space-between; align-items:center;
123		gap:16px; border:0; padding:9px 0 9px 90px; margin:32px 0; width:100%; }
124	.tws-byline::before, .tws-byline::after{ content:''; position:absolute; left:38px; right:0;
125		height:1px; background:#D6D6D6; }
126	/* 38px is half the picture, so the rule begins behind it whatever size the circle is. */
127	.tws-byline::before{ top:0; }
128	.tws-byline::after{ bottom:0; }
129
130	.tws-byline__author{ min-width:0; }
131	.tws-byline__who{ display:flex; align-items:center; gap:13px; min-width:0;
132		text-decoration:none; color:inherit; }
133	/* The theme underlines links inside article content. Everything in here is a picture or a
134	   heading, and an underlined date reads as a second, broken link. */
135	.tws-byline__who, .tws-byline__who *{ text-decoration:none; }
136
137	/* z-index because ::after comes after this in tree order, and without it the bottom rule
138	   would be painted across the face rather than behind it. */
139	/* The disc behind the picture is the site's own colour rather than a neutral grey, so a
140	   logo saved as a transparent PNG comes out on the brand colour of whichever of the seven
141	   titles it is being read on. Behind an ordinary photograph it is never seen. */
142	.tws-byline__pic{ position:absolute; left:0; top:50%; transform:translateY(-50%); z-index:1;
143		width:76px; height:76px; flex:0 0 76px; border-radius:50%; overflow:hidden;
144		background:rgb(var(--color-primary, 206 16 30)); border:1px solid #E0E0E0;
145		box-sizing:border-box; display:block; --tws-avatar:76px; }
146	.tws-byline__pic img,
147	.tws-byline__pic .avatar{ width:100%; height:100%; object-fit:cover; display:block;
148		transition:transform .3s; border-radius:0; }
149	.tws-byline__who:hover .tws-byline__pic img,
150	.tws-byline__who:hover .tws-byline__pic .avatar{ transform:scale(1.07); }
151	/* Somebody with no photograph gets initials, the same as the hub. */
152	/* get_avatar is asked for 112 so the photograph is sharp on a retina screen. The initials
153	   fallback is lettering, not a picture, and does not want doubling: --tws-avatar above tells it
154	   the size the circle really is, and it works the type out from that.
155	   The display is restated because the rule above catches .avatar, which the initials span also
156	   carries, and block would leave the letters flush to the top left corner. */
157	.tws-byline__pic .tws-initials-avatar{ width:100%; height:100%; border:0;
158		display:grid; place-items:center; }
159
160	.tws-byline__text{ min-width:0; }
161	.tws-byline__name{ display:block; font-size:17px; font-weight:700; line-height:1.25;
162		color:#231F20; letter-spacing:-.005em; }
163	.tws-byline__who:hover .tws-byline__name{ color:rgb(var(--color-primary)); }
164	.tws-byline__date{ display:block; font-size:12px; line-height:1.5; color:#767676; margin-top:1px; }
165	.tws-byline__date time{ font-size:12px; }
166
167	.tws-byline__share{ display:flex; align-items:center; gap:11px; flex-shrink:0; }
168	.tws-byline__label{ font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
169		color:#767676; }
170	.tws-byline__icons{ display:flex; gap:6px; }
171	.tws-byline__icons a{ display:grid; place-items:center; width:32px; height:32px;
172		border:1px solid #DCDCDC; color:#333; text-decoration:none; transition:.15s; }
173	.tws-byline__icons svg{ width:17px; height:17px; display:block; }
174	.tws-byline__icons a:hover{ background:rgb(var(--color-primary)); border-color:rgb(var(--color-primary)); }
175
176	/* app.css line 443 forces .social-icons-block .social-icon path to black !important, and to
177	   the brand colour on hover. Left alone that gives a red icon on a red box - invisible. This
178	   is the narrowest possible answer to it: only inside this bar, only on hover. */
179	.tws-byline__icons a:hover .social-icon path{ fill:#fff !important; }
180
181	@media (max-width:600px){
182		/* Stacked, so the word Share survives on a phone. The bar on a phone is left exactly as it
183		   was: the picture goes back inside it, and the rules back to the full width. */
184		.tws-byline{ flex-direction:column; align-items:stretch; gap:0; padding:10px 0;
185			margin:20px 0; }
186		.tws-byline::before, .tws-byline::after{ left:0; }
187		.tws-byline__share{ justify-content:space-between; margin-top:10px; padding-top:9px;
188			border-top:1px solid #EDEDED; }
189		.tws-byline__pic{ position:static; transform:none;
190			width:52px; height:52px; flex:0 0 52px; --tws-avatar:52px; }
191		.tws-byline__name{ font-size:16px; }
192	}
193	</style>
194	<link rel='shortlink' href='https://gundog-journal.com/?p=197' />
195    <!-- Meta Pixel Code -->
196    
196<script type="text/plain" data-service="facebook" data-category="marketing">
vendor: 446 bytes, lines 196-206
196
197    !function(f,b,e,v,n,t,s)
198    {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
199    n.callMethod.apply(n,arguments):n.queue.push(arguments)};
200    if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
201    n.queue=[];t=b.createElement(e);t.async=!0;
202    t.src=v;s=b.getElementsByTagName(e)[0];
203    s.parentNode.insertBefore(t,s)}(window, document,'script',
204    'https://connect.facebook.net/en_US/fbevents.js');
205
206    fbq('init', '
2061055197427285042
vendor: 40 bytes, lines 206-208
206');
207    fbq('track', 'PageView');
208    
208</script>
208
209
210    <noscript>
211        <img height="1" width="1" style="display:none"
212        src="https://www.facebook.com/tr?id=1055197427285042&ev=PageView&noscript=1"
213        alt="" />
214    </noscript>
215    <!-- End Meta Pixel Code -->
216    
217<!-- This site is using AdRotate v5.19.2 to display their advertisements - https://ajdg.solutions/ -->
218<!-- AdRotate CSS -->
219<style type="text/css" media="screen">
220	.g { margin:0px; padding:0px; overflow:hidden; line-height:1; zoom:1; }
221	.g img { height:auto; }
222	.g-col { position:relative; float:left; }
223	.g-col:first-child { margin-left: 0; }
224	.g-col:last-child { margin-right: 0; }
225	@media only screen and (max-width: 480px) {
226		.g-col, .g-dyn, .g-single { width:100%; margin-left:0; margin-right:0; }
227	}
228</style>
229<!-- /AdRotate CSS -->
230
231			<style>.cmplz-hidden {
232					display: none !important;
233				}</style>    <link rel="apple-touch-icon" href="/app/uploads/sites/2/2025/01/GJ-Favicons2.png" sizes="57x57">
234    <link rel="icon" type="image/png" href="/app/uploads/sites/2/2025/01/GJ-Favicons2.png">
235    <meta name="msapplication-TileColor" content="#fff">
236    <meta name="msapplication-TileImage" content="/app/uploads/sites/2/2025/01/GJ-Favicons2.png">
237    <meta name="theme-color" content="#fff">
238    <link rel="shortcut icon" type="image/png" href="/app/uploads/sites/2/2025/01/GJ-Favicons2.png">
239    <link rel="shortcut icon" type="image/x-icon" href="/app/uploads/sites/2/2025/01/GJ-Favicons2.png">
240<style id="tws-ad-css">
241.tws-nlad{display:block;position:relative;margin:32px 0 36px;background:#fff;border:1px solid #c4c4c4;transition:transform .18s ease,box-shadow .18s ease}
242.tws-nlad-inner{display:flex;flex-direction:column}
243.tws-nlad-media{display:block;position:relative;flex:0 0 auto;margin:0;line-height:0;background:#f2f2f2;overflow:hidden;aspect-ratio:1040/347}
244.tws-nlad-media picture,.tws-nlad-media img{position:absolute;inset:0;display:block !important;width:100% !important;height:100% !important;object-fit:cover;object-position:center}
245.tws-nlad-body{display:flex;flex-direction:column;justify-content:center;padding:20px 20px 22px;min-width:0}
246.tws-nlad .tws-nlad-title{margin:0 0 10px !important;padding:0 !important;border:0;font-size:22px !important;line-height:1.3 !important;font-weight:700;color:#1f2937}
247.tws-nlad .tws-nlad-copy{margin:0 !important;padding:0 !important;border:0;font-size:16px !important;line-height:25.6px !important;font-weight:300;color:#4b5563}
248.tws-nlad-actions{margin-top:18px}
249.tws-nlad-btn{position:static;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 30px;background:#231F20;color:#fff !important;font-size:14px;line-height:1.15;font-weight:700;letter-spacing:.09em;text-transform:uppercase;text-decoration:none !important;border-radius:0;transition:background .15s}
250/* the whole card is the click target: the button's ::after is stretched over it, so the button
251   stays the one real link, which is better for readers and for search than a block-level anchor */
252.tws-nlad-btn::after{content:"";position:absolute;inset:0;z-index:1}
253.tws-nlad:hover,.tws-nlad:focus-within{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.14)}
254.tws-nlad:hover .tws-nlad-btn,.tws-nlad:focus-within .tws-nlad-btn{background:#000000}
255@media (prefers-reduced-motion:reduce){.tws-nlad{transition:none}.tws-nlad:hover,.tws-nlad:focus-within{transform:none}}
256/* Side by side only from 1280 up. Between 1024 and 1279 the 70/30 split is in force but the main
257   column is at its narrowest (650px), so a 40% picture column is 259px against copy that wraps to
258   ~346px and the slot turns portrait. Below 1280 the block keeps the newsletter's stacked shape,
259   which also keeps the desktop crop predictable at roughly 1.1:1 to 1.4:1. */
260/* WHY THE PICTURE COLUMN IS STILL A PERCENTAGE, AND THE CROP THAT COSTS. Measured 15 September,
261   after two attempts at removing the crop were tried and rolled back. The picture takes 40% of
262   the card and stretches to whatever height the copy needs, so the box ratio is whatever falls
263   out of that. Against the 1200x900 the desk supplies:
264     window 1280, card 792px, box 316x289 (1.09:1) -> 18% off the SIDES, 25% with long copy
265     window 1366, card 852px, box 340x289 (1.18:1) -> 12% off the sides
266     window 1440, card 904px, box 361x264 (1.37:1) ->  3% off top and bottom
267     window 1600, card 1016px, box 406x264 (1.54:1) -> 13% off top and bottom
268     window 1920, card 1246px, box 498x250 (1.99:1) -> 33% off top and bottom
269   This is a DELIBERATE trade, made by Lee: the alternatives each cost more than the crop does.
270   A fixed pixel picture column with a 4:3 floor removes the crop entirely but only from a 1440
271   window up, which loses the side-by-side layout for 1280 and 1366 readers (tried as v0.4.0,
272   rolled back). Asking for a square instead removes the crop at every width (tried as v0.4.1,
273   measured as uncropped in all eighteen cases, rolled back) but changes the asset the desk has
274   already booked and delivered. Widening the percentage does not work at all: a wider picture
275   leaves a narrower text column, the copy wraps to more lines, the card grows taller and the box
276   goes narrower again - measured at 400, 420, 440 and 460px, worse every time.
277   So the crop stays, and the mitigation lives in the image spec instead: key content inside the
278   central 900x600 of the 1200x900, because up to 25% can come off the sides and up to 33% off the
279   top and bottom depending on the reader's window and how long the copy runs. Do not "fix" this
280   in CSS without reading _DOCS/newsletter-ad-block-markup-and-css.md first. */
281/* The :not(--stacked) matters. With no 4:3 supplied there is only the 3:1 banner, and putting
282   that in a 40% column crops it to about 1.1:1, which slices the advertiser's wordmark off both
283   ends. Simon's spec is explicit: no 4:3 means the banner runs full width above the copy at
284   EVERY size. So the row layout is switched off for that case rather than fed a picture it
285   cannot use. */
286@media (min-width:1280px){
287  .tws-nlad--article:not(.tws-nlad--stacked) .tws-nlad-inner{flex-direction:row;align-items:stretch}
288  .tws-nlad--article:not(.tws-nlad--stacked) .tws-nlad-media{flex:0 0 40%;align-self:stretch;aspect-ratio:auto;min-height:250px}
289  .tws-nlad--article:not(.tws-nlad--stacked) .tws-nlad-body{flex:1 1 auto;padding:26px 30px 28px}
290  .tws-nlad--article:not(.tws-nlad--stacked) .tws-nlad-title{font-size:24px !important}
291
292  /* FIXED RATIO, the default, and the whole of the difference between the two settings.
293     The picture column becomes a fixed 400px instead of 40% of the card, and the box is given a
294     floor of --tws-nlad-minh, which the block sets per advert to 400 divided by the picture's own
295     ratio - 300px for a 1200x900. The floor is what stops the top and bottom being cropped: at a
296     wide window, where the copy is short, the box sits exactly on 400x300 and the whole picture is
297     shown, and the card takes its height from the picture instead of the other way round. The copy
298     is already vertically centred, so the extra height appears as space above the title and below
299     the button.
300     It has to be a floor and not an exact aspect-ratio. If the box were pinned exactly, then at
301     1280 and 1366 - where the copy needs more height than a 400px 4:3 provides - the card would be
302     taller than the picture and leave a white gap beneath it. A floor lets the box grow taller
303     there, so the crop comes off the sides instead, gradually, and there is never a gap.
304     Measured over six window widths and three copy lengths, against the supplied 1200x900:
305       fixed ratio  - no crop at all from 1440 up; 6% off the sides at 1366, 13% at 1280
306       responsive   - 33% off top and bottom at 1920, 13% at 1600, 3% at 1440,
307                      then 12% off the sides at 1366 and 18% at 1280
308     Responsive is kept as a setting because it makes a shorter card, which suits a picture with
309     nothing important near the top or bottom edge. */
310  .tws-nlad--article.tws-nlad--fixed:not(.tws-nlad--stacked) .tws-nlad-media{flex:0 0 auto;width:400px;min-height:var(--tws-nlad-minh,300px)}
311}
312/* sidebar: always stacked, and always the 3:1 banner, because the column is 300px wide */
313.tws-nlad--sidebar{margin:0 0 30px}
314.tws-nlad--sidebar .tws-nlad-body{padding:16px 16px 18px}
315.tws-nlad--sidebar .tws-nlad-title{font-size:19px !important}
316.tws-nlad--sidebar .tws-nlad-copy{font-size:14px !important;line-height:21px !important}
317.tws-nlad--sidebar .tws-nlad-btn{display:flex;width:100%;min-height:46px;padding:13px 16px}
318/* The label. Simon set it centrally in the Engine and it is EMPTY as at 14 September, so no
319   element is printed at all - which is also what Lee asked for. If words arrive later they render
320   here without a code change: a small tab on the brand colour above the card, the same idiom as
321   the site's own black "Related Articles" tab. */
322.tws-nlad--labelled{margin-top:54px}
323.tws-nlad .tws-nlad-label{position:absolute;top:-21px;left:0;z-index:2;margin:0 !important;padding:3px 9px !important;background:#231F20;color:#fff;border:0;font-size:10px !important;line-height:1.5 !important;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
324/* demo only, and deliberately outside the card so the design is never judged with it on */
325.tws-nlad-demo{outline:2px dashed #C58B00;outline-offset:3px}
326.tws-nlad-note{margin:0 0 30px !important;padding:5px 8px !important;background:#FFF8DC;border:1px dashed #D9B400;font-size:11px !important;line-height:1.5 !important;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#8A6D00}
327</style><style id="tws-article-flag-css">.tws-flag{position:absolute;top:0;left:0;z-index:2;display:inline-flex;align-items:center;height:24px;padding:0 12px;background:#0A0A0A;color:#fff;font-family:inherit;font-size:12px;font-weight:700;line-height:1;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;pointer-events:none;}.tws-flag--breaking{background:#CE101E}.tws-flag--hero{height:34px;padding:0 17px;font-size:14px;letter-spacing:.12em}@media (max-width:480px){.tws-flag{height:22px;padding:0 10px;font-size:11px}.tws-flag--hero{height:28px;padding:0 14px;font-size:12px}}</style>
328<style id="twsnl-sub-css">
329.twsnl-sub{position:relative;display:inline-block}
330.twsnl-sub--mobile{display:block;width:100%;max-width:340px;margin:0 auto}
331.twsnl-sub-btn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;line-height:1.2;font-family:inherit;white-space:nowrap}
332.twsnl-sub--mobile .twsnl-sub-btn{width:100%;justify-content:center}
333.twsnl-sub-btn:focus-visible{outline:2px solid #B28751;outline-offset:3px}
334.twsnl-sub-chev{width:12px;height:12px;flex:0 0 12px;transition:transform .2s ease}
335.twsnl-sub-btn[aria-expanded="true"] .twsnl-sub-chev{transform:rotate(180deg)}
336.twsnl-sub-dd{position:absolute;top:calc(100% + 12px);right:0;z-index:10000;min-width:396px;background:#fff;color:#231f20;text-align:left;border:1px solid #e3e1df;border-radius:3px;box-shadow:0 12px 34px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.1);font-family:inherit;animation:twsnl-sub-in .18s ease-out both}
337.twsnl-sub-dd[hidden]{display:none}
338@keyframes twsnl-sub-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
339.twsnl-sub-caret{position:absolute;top:-7px;right:26px;width:12px;height:12px;background:#fff;border-left:1px solid #e3e1df;border-top:1px solid #e3e1df;transform:rotate(45deg)}
340.twsnl-sub--mobile .twsnl-sub-dd{left:0;right:0;min-width:0}
341.twsnl-sub--mobile .twsnl-sub-caret{right:auto;left:50%;margin-left:-6px}
342.twsnl-sub-row{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;text-decoration:none;color:#231f20;border-bottom:1px solid #e8e6e4;transition:background-color .15s ease}
343.twsnl-sub-row:last-child{border-bottom:0}
344.twsnl-sub-row:hover,.twsnl-sub-row:focus-visible{background:#f6f4f2;color:#231f20;text-decoration:none}
345.twsnl-sub-row:focus-visible{outline:2px solid #B28751;outline-offset:-2px}
346.twsnl-sub-row--mag{padding:18px;gap:16px}
347.twsnl-sub-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}
348.twsnl-sub-title{font-size:15px;font-weight:600;letter-spacing:.2px;line-height:1.3}
349.twsnl-sub-row--mag .twsnl-sub-title{font-size:17px}
350.twsnl-sub-desc{font-size:12.5px;font-weight:400;line-height:1.45;color:#6b6764}
351.twsnl-sub-ico{width:20px;height:20px;flex:0 0 20px;margin-top:2px;color:#B28751}
352.twsnl-sub-arrow{width:16px;height:16px;flex:0 0 16px;margin-top:3px;color:#B28751;opacity:0;transform:translateX(-4px);transition:opacity .15s ease,transform .15s ease}
353.twsnl-sub-row:hover .twsnl-sub-arrow,.twsnl-sub-row:focus-visible .twsnl-sub-arrow{opacity:1;transform:none}
354.twsnl-sub-cover{flex:0 0 74px;width:74px;display:block;box-shadow:0 3px 10px rgba(0,0,0,.28)}
355.twsnl-sub-cover img,.twsnl-sub-cover picture{display:block;width:100%!important;height:auto!important}
356.twsnl-sub-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#B28751;margin-bottom:3px}
357.twsnl-sub-link{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:12.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#B28751}
358.twsnl-sub-link .twsnl-sub-arrow{opacity:1;transform:none;margin-top:0}
359@media(prefers-reduced-motion:reduce){.twsnl-sub-dd{animation:none}.twsnl-sub-chev,.twsnl-sub-arrow{transition:none}}
360@media(max-width:1023px){
361/* The subscribe row rolls away once the reader starts scrolling, leaving the
362   logo and the menu button. .nav-header-main carries min-height:80px from the
363   mega-menu stylesheet, which beats max-height, so that has to go too. */
364#header .nav-header-main.justify-evenly{overflow:hidden;max-height:120px;opacity:1;transition:max-height .3s ease,opacity .22s ease,padding-bottom .3s ease}
365#header.twsnl-hdr-compact .nav-header-main.justify-evenly{max-height:0;min-height:0!important;opacity:0;padding-bottom:0!important}
366/* That overflow would clip the panel, so it is released while one is open. */
367#header.twsnl-sub-open .nav-header-main.justify-evenly{overflow:visible}
368@media(prefers-reduced-motion:reduce){#header .nav-header-main.justify-evenly{transition:none}}
369}
370</style>
371	<style id="tws-search-and-display-css">
372/* TWS Search & Display. Scoped tws-is- classes only: per CLAUDE.md 5.1 no new Tailwind
373   class would have any CSS behind it, because nobody in this workflow runs the build. */
374.tws-is-panel, .tws-is-panel * { border-radius: 0 !important; box-sizing: border-box; }
375.tws-is-panel { font-family: inherit; }
376
377/* The header dropdowns are the theme's own; only the padding is neutralised so the white
378   panel sits flush against the black navigation bar with no gap above it. */
379.desktop-search-dropdown > .container,
380.mobile-search-dropdown .header-search { padding-top: 0 !important; padding-bottom: 0 !important; }
381/* app.css also puts `border-top: 1px solid #e5e5e5` on this element. The dropdown spans the
382   full viewport (absolute, left-0 right-0) and the plugin makes it transparent, so that
383   border is the only part of it visible outside the white panel: a pale full-width line
384   sitting between the black navigation bar and the dimmed page. It was the theme's divider
385   for a white full-width dropdown; with a centred panel and an overlay it is just a seam. */
386.desktop-search-dropdown { background: transparent !important; box-shadow: none !important; border-top: 0 !important; }
387
388/* THE FLASH ON EVERY PAGE LOAD.
389   The dropdowns are ordinary markup carrying x-show="expanded", and x-show does nothing at
390   all until Alpine boots - so between first paint and Alpine initialising, the browser draws
391   the panel open. The theme has always done this; it only became noticeable once the panel
392   was a tall white box instead of a small input.
393
394   So the dropdowns are hidden by CSS until Alpine says it has started, and the ONLY job of
395   the script below is to add `tws-sd-alpine-ready` to <html> when it hears Alpine's
396   `alpine:initialized` event. The hiding itself is pure CSS, present in the very first frame,
397   which is the only thing that can beat a flash - a class added by script cannot hide
398   anything in time, because scripts run after the page has already painted. Adding a class to
399   REVEAL is fine: by then Alpine owns the element and has already hidden it itself.
400
401   Do NOT be tempted by `[x-show]:not([style])` as a stand-in for "Alpine has not touched
402   this". It looks right and it is wrong, and it cost a live regression on 18 August: Alpine
403   v3's x-show does `0 === el.style.length && el.removeAttribute('style')` when it SHOWS an
404   element, so an element that has just been opened has no style attribute either. The
405   selector matched again, and the panel could never be opened at all.
406
407   That timeout is the escape hatch. If Alpine never boots, the class goes on anyway after
408   four seconds and the panel is revealed, because a visible search box that still works on
409   Enter beats no search box at all. */
410html:not(.tws-sd-alpine-ready) .desktop-search-dropdown[x-show],
411html:not(.tws-sd-alpine-ready) .mobile-search-dropdown[x-show] { display: none !important; }
412
413/* app.css caps the wrapper the panel sits in:
414       .desktop-search-dropdown .header-search { margin: 0 auto; max-width: 600px }
415   That was sized for the old Search & Filter box, and it silently overrode the panel width
416   setting - no matter what percentage was chosen the panel could never exceed 600px, which
417   is why raising the setting appeared to do nothing at all. The cap has no purpose once the
418   form has been replaced, so it is lifted here. !important because this rule and the
419   theme's have identical specificity and the stylesheet order is not ours to rely on. */
420.desktop-search-dropdown .header-search,
421.mobile-search-dropdown .header-search {
422	max-width: none !important;
423	width: 100% !important;
424	padding-left: 0 !important;
425	padding-right: 0 !important;
426}
427
428/* The configured width applies on a wide desktop. As the window narrows, a fixed
429   percentage leaves the panel looking mean and squeezes the result rows, so it takes a
430   progressively larger share and finally the full width. Each step still respects the
431   setting: a site configured narrower stays proportionally narrower throughout. */
432.desktop-search-dropdown .tws-is-panel {
433	width: 50vw;
434	min-width: 460px;
435	max-width: 100%;
436	margin: 0 auto;
437	background: #fff;
438	box-shadow: 0 24px 48px rgba(0,0,0,.30);
439	padding: 24px 26px 26px;
440}
441@media (max-width: 1500px) {
442	.desktop-search-dropdown .tws-is-panel { width: 60vw; }
443}
444@media (max-width: 1250px) {
445	.desktop-search-dropdown .tws-is-panel { width: 73vw; }
446}
447.mobile-search-dropdown .tws-is-panel {
448	width: 100%;
449	background: #fff;
450	box-shadow: 0 18px 36px rgba(0,0,0,.30);
451	padding: 16px 15px 18px;
452}
453
454.tws-is-box { display: flex; align-items: center; gap: 12px; border: 2px solid #b38750; padding: 13px 16px; background: #fff; }
455.tws-is-box .tws-is-icon { flex: none;
455 width: 20px; height: 20px; color: #888; }
456.tws-is-input { border: 0; outline: 0; width: 100%; font-size: 17px; line-height: 1.3; color: #1a1a1a; background: transparent; font-family: inherit; padding: 0; margin: 0; height: auto; box-shadow: none; }
457.tws-is-input::placeholder { color: #a9a9a9; opacity: 1; }
458/* Chrome and Safari draw their own clear cross on type=search. Without this there are two. */
459.tws-is-input::-webkit-search-cancel-button, .tws-is-input::-webkit-search-decoration { -webkit-appearance: none; appearance: none; display: none; }
460.tws-is-clear { border: 0; background: #efefef; color: #666; width: 24px; height: 24px; font-size: 14px; line-height: 1; cursor: pointer; flex: none; padding: 0; }
461.tws-is-clear[hidden] { display: none; }
462
463.tws-is-meta { display: flex; justify-content: space-between; align-items: baseline; margin: 16px 2px 8px; font-size: 11px; color: #777; text-transform: uppercase; letter-spacing: .8px; }
464.tws-is-meta .tws-is-kbd { text-transform: none; letter-spacing: 0; }
465.tws-is-meta kbd { background: #f3f3f3; border: 1px solid #ddd; padding: 1px 5px; font-size: 10.5px; font-family: inherit; }
466
467.tws-is-results { list-style: none; margin: 0; padding: 0; }
468.tws-is-item { display: flex; gap: 16px; align-items: center; padding: 10px; cursor: pointer; }
469.tws-is-item + .tws-is-item { border-top: 1px solid #f0efec; }
470.tws-is-item:hover, .tws-is-item.is-active { background: rgba(0,0,0,.04); }
471.tws-is-item a { text-decoration: none; color: inherit; display: flex; gap: 16px; align-items: center; width: 100%; }
472.tws-is-thumb { flex: none; width: 110px; height: 72px; overflow: hidden; background: #e6e4e0; }
473/* Imagify rewraps images in <picture> and moves the class onto the wrapper (CLAUDE.md 5.5),
474   so the size is pinned on the container and any descendant image is forced to fill it. */
475.tws-is-thumb picture, .tws-is-thumb img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
476.tws-is-text { min-width: 0; }
477.tws-is-cat { display: block; font-size: 10.5px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #b38750; margin-bottom: 2px; }
478/* These are spans, and a span is inline: without display:block the byline ran straight on
479   from the end of the headline ("...British fly fairBy Hollis Butler"). */
480.tws-is-title { display: block; font-size: 16.5px; font-weight: 600; line-height: 1.35; color: #1a1a1a; margin: 0; font-family: inherit; }
481/* Every highlight in the panel, not just the one in the headline.
482   Only the title was styled before, so the match inside the byline fell through to the
483   browser's default <mark> - bright yellow - and the two sat side by side in different
484   colours. Scoped to the panel, and a translucent tint of the site's own accent rather
485   than a second hard-coded colour, so it is right on all seven sites. */
486.tws-is-panel mark { background: rgba(179, 135, 80, .16); color: inherit; padding: 0 1px; }
487.tws-is-byline { display: block; font-size: 12px; color: #767676; margin-top: 3px; }
488.tws-is-byline b { font-weight: 600; color: #444; }
489
490.tws-is-viewall { display: block; width: 100%; text-align: center; margin-top: 12px; padding: 12px; border: 0; background: #b38750; color: #fff; font-weight: 700; font-size: 13.5px; letter-spacing: .4px; cursor: pointer; font-family: inherit; text-decoration: none; }
491.tws-is-viewall:hover, .tws-is-viewall:focus { filter: brightness(.85); color: #fff; }
492
493.tws-is-empty h4 { font-size: 11px; letter-spacing: .8px; text-transform: uppercase; color: #777; font-weight: 600; margin: 14px 2px 10px; font-family: inherit; }
494.tws-is-chips { display: flex; flex-wrap: wrap; gap: 8px; }
495.tws-is-chip { border: 1px solid #ddd; background: #fafafa; padding: 7px 14px; font-size: 13px; color: #444; cursor: pointer; font-family: inherit; }
496.tws-is-chip:hover { border-color: #b38750; color: #b38750; }
497.tws-is-note { padding: 22px 8px; text-align: center; color: #777; font-size: 14px; }
498
499/* Dimming the page behind is the part Lee singled out. Below the header (z 9999) and below
500   the sticky advertisement in layouts/app.blade.php (z 99999), so neither is ever covered. */
501.tws-is-dim { display: none; position: fixed; inset: 0; background: rgba(20,18,16,.45); z-index: 9998; pointer-events: none; }
502body.tws-is-open .tws-is-dim { display: block; }
503
504@media (prefers-reduced-motion: no-preference) {
505	body.tws-is-open .tws-is-panel { animation: tws-is-drop .22s ease-out; }
506	@keyframes tws-is-drop { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
507}
508
509@media (max-width: 1023px) {
510	.desktop-search-dropdown .tws-is-panel { width: 100%; min-width: 0; padding: 16px 15px 18px; }
511	.tws-is-thumb { width: 84px; height: 58px; }
512	.tws-is-title { font-size: 14.5px; }
513	.tws-is-cat { font-size: 9.5px; }
514	.tws-is-byline { font-size: 11px; }
515	.tws-is-meta .tws-is-kbd { display: none; }
516	.tws-is-viewall { font-size: 12.5px; }
517}
518
519/* A panel dropped into page content by the theme's Search block, rather than the header. */
520:not(.desktop-search-dropdown):not(.header-search) > .tws-is-panel { background: transparent; box-shadow: none; padding: 0; }
521</style>
522<script id="tws-search-and-display-boot">
523/* Releases the anti-flash rule above. Runs in the head, before the theme bundle, so the
524   listener is in place well before Alpine dispatches its event.
525
526   Three ways in, because being stuck hidden is far worse than a brief flash:
527     1. alpine:initialized - the normal path, fires once Alpine has taken over the page;
528     2. Alpine already present - covers this script somehow running late;
529     3. a four second timeout - if Alpine never boots at all the search is still reachable. */
530(function () {
531	var el = document.documentElement;
532	var released = false;
533
534	function release() {
535		if (released) { return; }
536
537		released = true;
538		el.classList.add('tws-sd-alpine-ready');
539	}
540
541	document.addEventListener('alpine:initialized', release);
542
543	if (window.Alpine) { release(); }
544
545	setTimeout(release, 4000);
546})();
547</script>
547
548			<style id="tws-search-and-display-pagination-css">
549/* TWS Search & Display - pagination as buttons.
550   Colour comes from the theme's own --color-primary custom property, so each site gets its
551   own red without this file knowing anything about it. The hex on the line above each var()
552   is the fallback, read from Theme Settings, for anywhere the property is not set. */
553
554/* Centre the pager. The archive block ships justify-start, so this is the rule that moves
555   the numbers from the left edge into the middle of the column. */
556.posts-pagination {
557	justify-content: center !important;
558	align-items: center;
559	flex-wrap: wrap;
560	gap: 8px !important;
561}
562
563/* ---------------------------------------------------------------
564   Numbered pager: category, tag and the landing pages that use the
565   paginated-posts block. paginate_links() prints .page-numbers on
566   every item, .current on the page you are on, .dots on the ellipsis
567   and .prev / .next on the arrows.
568   --------------------------------------------------------------- */
569.posts-pagination .page-numbers {
570	display: inline-flex;
571	align-items: center;
572	justify-content: center;
573	min-width: 44px;
574	height: 44px;
575	padding: 0 14px;
576	font-size: 16px !important;
577	font-weight: 600;
578	line-height: 1;
579	text-decoration: none;
580	color: #231F20 !important;
581	background: #fff;
582	border: 1px solid #d9d9d9;
583	transition: background .15s ease, color .15s ease, border-color .15s ease;
584}
585
586.posts-pagination a.page-numbers:hover {
587	border-color: #b38750;
588	border-color: rgb(var(--color-primary));
589	color: #b38750 !important;
590	color: rgb(var(--color-primary)) !important;
591}
592
593.posts-pagination .page-numbers.current {
594	background: #b38750;
595	background: rgb(var(--color-primary));
596	border-color: #b38750;
597	border-color: rgb(var(--color-primary));
598	color: #fff !important;
599}
600
601.posts-pagination .page-numbers.dots {
602	background: transparent;
603	border-color: transparent;
604	min-width: 20px;
605	padding: 0 2px;
606	color: #767676 !important;
607}
608
609/* On a phone the full set can spill onto a second row and strand the forward arrow on its
610   own, so the buttons tighten up rather than wrap. */
611@media (max-width: 480px) {
612	.posts-pagination {
613		gap: 6px !important;
614	}
615
616	.posts-pagination .page-numbers {
617		min-width: 38px;
618		height: 38px;
619		padding: 0 8px;
620		font-size: 15px !important;
621	}
622}
623
624/* ---------------------------------------------------------------
625   Search results pager. get_the_posts_navigation() prints a nav with
626   two stacked divs, which is why Older and Newer sit on top of each
627   other today. This puts them side by side as buttons.
628   --------------------------------------------------------------- */
629.posts-pagination .navigation,
630.posts-pagination .posts-navigation {
631	width: 100%;
632}
633
634.posts-pagination .nav-links {
635	display: flex;
636	justify-content: center;
637	align-items: center;
638	gap: 10px;
639	flex-wrap: wrap;
640}
641
642.posts-pagination .nav-links a {
643	display: inline-flex;
644	align-items: center;
645	justify-content: center;
646	padding: 13px 22px;
647	font-size: 16px;
648	font-weight: 600;
649	letter-spacing: .34px;
650	line-height: 1;
651	text-decoration: none;
652	color: #fff !important;
653	background: #b38750;
654	background: rgb(var(--color-primary));
655	transition: filter .15s ease;
656}
657
658.posts-pagination .nav-links a:hover {
659	filter: brightness(.85);
660}
661</style>
662			<style id="tws-search-and-display-ratio-css">
663
664/* ---------------------------------------------------------------
665   Listing picture at 1.88:1, matching the article featured image.
666
667   The paginated-posts block prints
668     <ul class="flex flex-col gap-[40px] lg:gap-[10px]">
669       <li class="gap-[10px] lg:gap-[15px] flex flex-wrap pb-[10px] border-b …">
670         <div class="relative w-full lg:w-[285px] lg:h-[180px] overflow-hidden
671                     aspect-[2/1] lg:aspect-[1.58/1]">                       picture
672         <div class="flex flex-col … lg:w-[calc(100%-285px-40px)]">          text
673   --------------------------------------------------------------- */
674
675/* Desktop, 1024px up (Tailwind lg, where the picture stops being full width).
676   285x180 becomes 338x180; 338 / 180 = 1.878. */
677@media (min-width: 1024px) {
678
679	ul.flex.flex-col.gap-\[40px\].lg\:gap-\[10px\] > li > div[class*="lg:w-[285px]"] {
680		width: 338px !important;
681		flex: 0 0 338px;
682		height: 180px !important;
683		aspect-ratio: 1.88 / 1 !important;
684	}
685
686	ul.flex.flex-col.gap-\[40px\].lg\:gap-\[10px\] > li > div[class*="lg:w-[calc(100%-285px-40px)]"] {
687		width: calc(100% - 378px) !important;
688	}
689}
690
691/* Below 1024px the picture is already full width, so only its shape changes: 2:1 to 1.88:1. */
692@media (max-width: 1023px) {
693
694	ul.flex.flex-col.gap-\[40px\].lg\:gap-\[10px\] > li > div[class*="lg:w-[285px]"] {
695		aspect-ratio: 1.88 / 1 !important;
696	}
697}
698
699/* Imagify is set to serve WebP with <picture> tags, which lifts the class attribute off the
700   <img> and onto the <picture>
700. The inner img therefore loses object-cover / h-full / w-full
701   and falls back to its natural size, on those images that happen to have a WebP version.
702   Rules for both elements, at every width. CLAUDE.md 5.5. */
703ul.flex.flex-col.gap-\[40px\].lg\:gap-\[10px\] > li > div[class*="lg:w-[285px]"] picture,
704ul.flex.flex-col.gap-\[40px\].lg\:gap-\[10px\] > li > div[class*="lg:w-[285px]"] img {
705	display: block;
706	width: 100% !important;
707	height: 100% !important;
708	object-fit: cover;
709}
710</style>
711			<style id="tws-comp-css">
712.tws-comp-card,.tws-comp-card *,.tws-cp,.tws-cp *,.tws-comp-toast,.tws-comp-toast *,.tws-comp-bar,.tws-comp-bar *{box-sizing:border-box}
713.tws-comp-flag{position:absolute;left:0;top:14px;z-index:2;display:inline-block;background:#C8102E;color:#fff;font:700 11px/1 'Open Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:6px 9px}
714.tws-flag.tws-flag--win{background:#C8102E;color:#fff}
715.tws-comp-pill{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:#fff;color:#231F20;font:700 11px/1 'Open Sans',Arial,sans-serif;padding:6px 9px;border-radius:999px}
716.tws-comp-pill i{width:7px;height:7px;border-radius:50%;background:#C8102E;display:inline-block}
717.tws-comp-pill--dark{position:static;background:#231F20;color:#fff}
718.tws-comp-pill--dark i{background:#ff4d57}
719.tws-comp-card{position:relative;display:flex;flex-direction:column;background:#f5f3ef;color:#231F20;transition:transform .18s ease,box-shadow .18s ease}
720.tws-comp-card:hover,.tws-comp-card:focus-within{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.14)}
721@media (prefers-reduced-motion:reduce){.tws-comp-card{transition:none}.tws-comp-card:hover{transform:none}}
722.tws-comp-pic{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#ddd}
723.tws-comp-pic img,.tws-comp-pic picture{position:absolute;inset:0;width:100% !important;height:100% !important;object-fit:cover;display:block;max-width:none}
724.tws-comp-body{display:flex;flex-direction:column;gap:8px;padding:16px 16px 18px;flex:1}
725.tws-comp-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
726#app#app .tws-comp-worth,.tws-comp-worth{font:700 12px/1.2 'Open Sans',Arial,sans-serif !important;letter-spacing:.06em;text-transform:uppercase;color:#C8102E}
727#app#app .tws-comp-title,.tws-comp-title{font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:18px;line-height:1.3;color:#231F20}
728#app#app .tws-comp-blurb,.tws-comp-blurb{font-size:15px;line-height:1.5;color:#4a4a4a}
729#app#app .tws-comp-free,.tws-comp-free{font:400 12px/1.3 'Open Sans',Arial,sans-serif !important;color:#666}
730#app#app a.tws-comp-btn,a.tws-comp-btn{position:static;display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:rgb(var(--color-primary,200,16,46));color:#1d1d1b !important;font:700 12px/1 'Open Sans',Arial,sans-serif !important;letter-spacing:.08em;text-transform:uppercase;padding:0 20px;text-decoration:none !important;white-space:nowrap}
731.tws-comp-card a.tws-comp-btn::after{content:"";position:absolute;inset:0;z-index:1}
732.tws-comp-card--card .tws-comp-btn{align-self:flex-start;margin-top:auto}
733.tws-comp-card--wide{flex-direction:row;margin:32px 0;border:1px solid #e3ded6}
734.tws-comp-card--wide .tws-comp-pic{flex:0 0 40%;aspect-ratio:auto;min-height:220px}
735.tws-comp-card--wide .tws-comp-body{justify-content:center;gap:10px;padding:22px 24px}
736#app#app .tws-comp-card--wide .tws-comp-title{font-size:24px;line-height:1.25}
737.tws-comp-card--side{background:#231F20;color:#fff;margin:0 0 30px;display:none;border:1px solid #e3ded6}
738@media (min-width:1024px){.tws-comp-card--side{display:flex}}
739.tws-comp-card--side .tws-comp-pic{aspect-ratio:16/10}
740#app#app .tws-comp-card--side .tws-comp-title{color:#fff;font-size:20px}
741#app#app .tws-comp-card--side .tws-comp-worth{color:#ff6b73}
742.tws-comp-card--side .tws-comp-row{flex-direction:column;align-items:stretch;gap:8px}
743#app#app .tws-comp-card--side .tws-comp-free{color:#bbb;text-align:center}
744@media (max-width:767px){.tws-comp-card--wide{flex-direction:column}.tws-comp-card--wide .tws-comp-pic{flex:none;aspect-ratio:16/9;min-height:0}#app#app .tws-comp-card--wide .tws-comp-title{font-size:20px}}
745.tws-comp-label{border-bottom:3px solid #000;margin-bottom:20px}
746.tws-comp-label span{display:inline-block;background:#000;color:#fff;font-weight:600;font-size:16px;line-height:1.5;padding:10px 20px}
747.tws-comp-grid{display:grid;gap:20px;grid-template-columns:repeat(4,minmax(0,1fr))}
748.tws-comp-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
749.tws-comp-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
750.tws-comp-band--one .tws-comp-grid{display:block}
751.tws-comp-band--one .tws-comp-card--wide{margin:0}
752.tws-comp-foot{display:flex;justify-content:space-between;gap:16px;margin-top:14px;font-size:13px;line-height:1.4}
753#app#app .tws-comp-foot a{color:#231F20;font-weight:700;text-decoration:underline}
754@media (max-width:1023px){.tws-comp-grid,.tws-comp-grid--2,.tws-comp-grid--3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:6px}.tws-comp-grid .tws-comp-card--card{flex:0 0 78%;scroll-snap-align:start}}
755.tws-comp-short{margin-top:20px}
756@media (min-width:1024px){.tws-comp-short{margin-top:40px}}
757.tws-comp-badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;border-radius:9px;background:#C8102E;color:#fff;font:700 10px/1 'Open Sans',Arial,sans-serif;margin-left:6px;padding:0 4px;vertical-align:2px}
758.tws-comp-strip{margin-bottom:0}
759/* the standard page */
760.tws-cp{color:#231F20}
761.tws-cp-hero{position:relative;margin:0;aspect-ratio:1.88/1;overflow:hidden;background:#fff;border:1px solid #e3ded6}
762.tws-cp-hero img,.tws-cp-hero picture{position:absolute;inset:0;width:100% !important;height:100% !important;object-fit:cover;display:block}
763.tws-cp-hero .tws-comp-flag{top:20px;font-size:13px;padding:8px 12px}
764.tws-cp-hero .tws-comp-pill{left:16px;bottom:16px;font-size:13px;padding:8px 12px}
765.tws-cp-hero .tws-comp-pill--dark{position:absolute}
766.tws-cp-hero--gal{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:6px;overflow:visible;background:transparent;border:0}
767.tws-cp-main{position:relative;margin:0;overflow:hidden;background:#fff;border:1px solid #e3ded6}
768.tws-cp-side{position:relative;min-height:0}
769.tws-cp-thumbs{position:absolute;inset:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none}
770.tws-cp-thumbs::-webkit-scrollbar{display:none}
771/* Side pictures (1.8.0): 4:3, three slots showing, the same size however many there are. The
772   picture block is 1.88:1, so one slot is (width / 1.88 - 12px) / 3 tall and 4/3 of that wide.
773   Width comes from the .tws-cp container. Fewer than three leaves a gap at the bottom. */
774.tws-cp{container-type:inline-size}
775@media (min-width:768px){@supports (width:1cqw){
776 .tws-cp-hero--gal{grid-template-columns:minmax(0,1fr) calc((100cqw / 1.88 - 12px) / 3 * 4 / 3)}
777}}
778button.tws-cp-thumb{position:relative;display:block;flex:0 0 calc((100% - 12px) / 3);overflow:hidden;border:1px solid #e3ded6;padding:0;margin:0;background:#fff;cursor:pointer;min-height:0;scroll-snap-align:start}
779button.tws-cp-thumb:hover img,button.tws-cp-thumb:focus-visible img{transform:scale(1.04)}
780button.tws-cp-thumb img{transition:transform .25s ease}
781button.tws-cp-thumb:focus-visible{outline:3px solid #C8102E;outline-offset:-3px}
782button.tws-cp-arrow{position:absolute;left:50%;z-index:3;width:36px;height:36px;margin-left:-18px;border:0;border-radius:50%;padding:0;background:rgba(35,31,32,.8);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.25);transition:opacity .2s}
783button.tws-cp-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
784button.tws-cp-arrow:hover{background:#C8102E}
785button.tws-cp-arrow[disabled]{opacity:0;pointer-events:none}
786.tws-cp-arrow--up{top:8px}.tws-cp-arrow--down{bottom:8px}
787@media (max-width:767px){
788 .tws-cp-hero--gal{aspect-ratio:auto;grid-template-columns:1fr}
789 .tws-cp-main{aspect-ratio:1.88/1}
790 .tws-cp-side{position:static}
791 .tws-cp-thumbs{position:static;flex-direction:row;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory}
792 button.tws-cp-thumb{flex:0 0 calc((100% - 12px) / 3);aspect-ratio:4/3}
793 button.tws-cp-arrow{display:none}
794}
795.tws-cp-credit{position:absolute;right:0;bottom:0;max-width:60%;background:rgba(0,0,0,.5);color:#fff;font-size:10px;line-height:1.5;padding:6px 9px;margin:0}
796.tws-cp--closed .tws-cp-hero img{filter:grayscale(.85) brightness(.9)}
797.tws-cp-top{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #e3ded6;border-top:0;margin-bottom:0}
798.tws-cp-top--one{grid-template-columns:1fr;border-top:1px solid #e3ded6;margin:0 0 30px}
799.tws-cp-prize{padding:26px 28px}
800.tws-cp-lbl{font:700 11px/1 'Open Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#767676;margin:0 0 10px}
801#app#app .tws-cp-worth{font-family:'Montserrat', Arial, sans-serif !important;font-weight:900 !important;font-size:44px;line-height:1;color:#C8102E;margin:0 0 20px}
802.tws-cp .tws-cp-intro p{font-size:15px;line-height:1.55;margin:0 0 12px}
803.tws-cp .tws-cp-intro:last-child p:last-child{margin-bottom:0}
804.tws-cp .tws-cp-intro + ul.tws-cp-bul{margin-top:16px}
805.tws-cp ul.tws-cp-bul{list-style:none;padding:0;margin:0}
806.tws-cp ul.tws-cp-bul li{position:relative;padding:0 0 10px 26px;font-size:15px;line-height:1.45;list-style:none;margin:0}
807.tws-cp ul.tws-cp-bul li::before{content:"";position:absolute;
807left:0;top:5px;width:12px;height:12px;background:#C8102E;clip-path:polygon(0 50%,40% 90%,100% 10%,85% 0,40% 65%,12% 38%)}
808.tws-cp-enter{background:#231F20;color:#fff;padding:26px 28px;display:flex;flex-direction:column;gap:12px}
809#app#app .tws-cp-boxh{font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:22px;line-height:1.25}
810.tws-cp-enter .tws-cp-boxh{color:#fff}
811#app#app .tws-cp-boxp{font-size:14px;line-height:1.5}
812.tws-cp-enter .tws-cp-boxp{color:#d6d3cd}
813.tws-cp-count{display:flex;gap:8px}
814.tws-cp-count span{flex:1;background:#3a3536;text-align:center;padding:8px 0;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#bbb}
815#app#app .tws-cp-count b{display:block;font-family:'Montserrat', Arial, sans-serif !important;font-size:22px;line-height:1.1;color:#fff}
816.tws-cp-entry{margin:26px 0 0;scroll-margin-top:180px}
817.tws-cp-entry .tws-cp-h{margin-top:0 !important}
818.tws-cp-form{background:#fff;color:#231F20;border:1px solid #e3ded6;border-top:4px solid #C8102E;padding:8px 16px;min-height:120px}
819.tws-cp-form .tws-embed{margin:0 !important}
820.tws-cp-form iframe{width:100% !important;border:0;display:block}
821.tws-comp-btn--big{width:100%;min-height:50px !important;font-size:14px !important}
822#app#app .tws-cp-fine{font-size:12px;color:#aaa;text-align:center}
823.tws-cp-closedbox{background:#f5f3ef;padding:26px 28px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;border-left:1px solid #e3ded6}
824.tws-cp-top--one .tws-cp-closedbox{border-left:0}
825.tws-cp-tag{background:#231F20;color:#fff;font:700 11px/1 'Open Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:6px 9px}
826.tws-cp-sponsor{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #e3ded6;font-size:13px;color:#767676}
827.tws-cp-sponsor img{max-height:44px;width:auto}
828.tws-cp-sponsor b{font:800 16px/1 'Open Sans',Arial,sans-serif;color:#231F20;border:2px solid #231F20;padding:6px 10px}
829.tws-cp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}
830.tws-cp-stats--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tws-cp-stats--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tws-cp-stats--1{grid-template-columns:1fr}
831.tws-cp-stats div{border-top:4px solid #C8102E;background:#f5f3ef;padding:16px;text-align:center}
832#app#app .tws-cp-stats b{display:block;font-family:'Montserrat', Arial, sans-serif !important;font-weight:900 !important;font-size:30px;line-height:1.1;color:#231F20}
833.tws-cp-stats span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#767676}
834.tws-cp-story{margin-top:26px;border:1px solid #e3ded6;background:#fff}
835#app#app .tws-cp-storyh{font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:22px;line-height:1.3;padding:18px 24px;border-bottom:1px solid #e3ded6;background:#f5f3ef}
836.tws-cp-storyb{padding:4px 24px 20px}
837.tws-cp-storyb > section:first-child{margin-top:16px !important}
838.tws-cp-storyb .container{padding-left:0 !important;padding-right:0 !important;max-width:none !important}
839.tws-cp-storyb > section:last-child,.tws-cp-storyb > section:last-child .container,.tws-cp-storyb > section:last-child .container > *{margin-bottom:0 !important;padding-bottom:0 !important}
840.tws-cp-storyb > section:last-child .container > :last-child > :last-child{margin-bottom:0 !important}
841#app#app .tws-cp-h{font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:24px;line-height:1.3;margin:30px 0 12px}
842.tws-cp-gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}
843.tws-cp-gal--2{grid-template-columns:repeat(2,minmax(0,1fr))}.tws-cp-gal--1{grid-template-columns:1fr}
844.tws-cp-gal figure{margin:0}
845.tws-cp-gal img{width:100% !important;height:auto !important;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid #e3ded6;background:#fff}
846/* 1.8.0: Show the whole picture (Layout tab) – product shots on white are not cropped */
847.tws-cp--whole button.tws-cp-thumb img,.tws-cp--whole .tws-cp-gal img{object-fit:contain !important;background:#fff}
848/* 1.8.9: the main picture always fills its box, proportions kept, centred. Whatever does not fit
849   is cropped evenly from the top and bottom or the sides; never any white space. */
850.tws-cp-hero img[data-tws-cp-main]{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;transform:none !important;object-fit:cover !important;object-position:50% 50% !important}
851.tws-cp-gal figcaption{font-size:12px;color:#767676;margin-top:6px}
852.tws-cp-det{background:#f5f3ef;border-left:4px solid #231F20;padding:20px 24px;display:grid;grid-template-columns:auto 1fr;gap:10px 22px;font-size:15px;margin:0}
853.tws-cp-det dt{font-weight:700}.tws-cp-det dd{margin:0}
854.tws-cp-faq{border-top:1px solid #e3ded6}
855.tws-cp-faq details{border-bottom:1px solid #e3ded6}
856.tws-cp-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:14px 0;font-weight:600;font-size:15px}
857.tws-cp-faq summary::-webkit-details-marker{display:none}
858.tws-cp-faq summary::after{content:"+";color:#C8102E;font-size:20px;line-height:1}
859.tws-cp-faq details[open] summary::after{content:"\2212"}
860.tws-cp-faq details div{padding:0 0 16px;font-size:15px;line-height:1.55}
861.tws-cp-tc{font-size:13px;color:#767676;margin-top:16px}
862#app#app .tws-cp-tc a{color:#231F20;text-decoration:underline}
863.tws-cp-more{margin:26px 0}
864.tws-cp-more .tws-comp-card{border:1px solid #e3ded6}
865@media (max-width:1023px){
866 .tws-cp-top{grid-template-columns:1fr}
867 .tws-cp-enter{order:-1}
868 .tws-cp-closedbox{border-left:0;order:-1}
869 .tws-cp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
870 #app#app .tws-cp-worth{font-size:36px}
871 .tws-cp-gal{grid-template-columns:repeat(2,minmax(0,1fr))}
872 .tws-cp-gal figure:nth-child(n+3){display:none}
873}
874/* pop-up and bar */
875.tws-comp-toast{position:fixed;left:24px;bottom:24px;z-index:99990;width:400px;max-width:calc(100vw - 32px);display:flex;background:#fff;color:#231F20;border-top:4px solid #C8102E;box-shadow:0 12px 40px rgba(0,0,0,.28);transform:translateY(20px);opacity:0;transition:transform .3s ease,opacity .3s ease}
876.tws-comp-toast.is-in{transform:none;opacity:1}
877.tws-comp-toast[hidden],.tws-comp-bar[hidden]{display:none !important}
878.tws-comp-toast img{width:120px;object-fit:cover;display:block;flex:none}
879.tws-comp-tb{display:flex;flex-direction:column;gap:6px;padding:14px 38px 14px 14px}
880.tws-comp-tk{font:700 10px/1 'Open Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#C8102E}
881#app#app .tws-comp-tt,.tws-comp-tt{font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:15px;line-height:1.3}
882.tws-comp-tm{font:700 11px/1.3 'Open Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#C8102E}
883#app#app a.tws-comp-tl,.tws-comp-toast a.tws-comp-tl{font:700 12px/1 'Open Sans',Arial,sans-serif !important;color:#231F20 !important;text-decoration:underline}
884.tws-comp-x{position:absolute;right:6px;top:6px;width:30px;height:30px;border:0;background:transparent;color:#888;font-size:22px;line-height:1;cursor:pointer}
885.tws-comp-bar{position:fixed;left:0;right:0;bottom:0;z-index:99990;display:flex;align-items:center;gap:12px;padding:10px 40px 10px 12px;background:#231F20;color:#fff;border-top:3px solid #C8102E}
886.tws-comp-bar img{width:52px;height:52px;object-fit:cover;flex:none}
887#app#app .tws-comp-bt,.tws-comp-bt{flex:1;font-family:'Montserrat', Arial, sans-serif !important;font-weight:700 !important;font-size:14px;line-height:1.25}
888.tws-comp-bt small{display:block;font:600 11px/1.3 'Open Sans',Arial,sans-serif;color:#ff8a90;margin-top:3px}
889#app#app .tws-comp-bar a,.tws-comp-bar a{background:rgb(var(--color-primary,200,16,46));color:#1d1d1b !important;font:700 12px/1 'Open Sans',Arial,sans-serif !important;text-transform:uppercase;letter-spacing:.06em;padding:12px;text-decoration:none !important}
890.tws-comp-bar .tws-comp-x{top:50%;transform:translateY(-50%);color:#bbb}
891@media (min-width:768px){.tws-comp-bar{display:none !important}}
892@media (max-width:767px){.tws-comp-toast{left:16px;bottom:16px}.tws-comp-toast img{width:90px}}
893</style>
894<style id="tws-comp-listing-css">li:has(.tws-comp-listing-line--open)>div.relative::after{content:"Enter now \203A";position:absolute;
894left:0;bottom:14px;z-index:3;pointer-events:none;background:#C8102E;color:#fff;font:700 12px/1 'Open Sans',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;box-shadow:0 2px 6px rgba(0,0,0,.25)}</style>
895<style id="tws-comp-closed-css">.tws-comp-closed{color:#C8102E;font-weight:700;text-transform:uppercase;letter-spacing:.02em}</style>
896<link rel="icon" href="/app/uploads/sites/2/2025/01/cropped-GJ-Favicons2-32x32.png" sizes="32x32" />
897<link rel="icon" href="/app/uploads/sites/2/2025/01/cropped-GJ-Favicons2-192x192.png" sizes="192x192" />
898<link rel="apple-touch-icon" href="/app/uploads/sites/2/2025/01/cropped-GJ-Favicons2-180x180.png" />
899<meta name="msapplication-TileImage" content="/app/uploads/sites/2/2025/01/cropped-GJ-Favicons2-270x270.png" />
900<style id="tws-nav-subcategories">
901@media only screen and (min-width: 1024px) {
902  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children {
903    position: relative !important;
904  }
905
906  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children > ul.mega-sub-menu {
907    position: absolute !important;
908    top: var(--tws-subs-top, 100%) !important;
909    left: 0 !important;
910    right: auto !important;
911    width: -moz-max-content !important;
912    width: max-content !important;
913    min-width: 100% !important;
914    max-width: 320px !important;
915    padding: 0 !important;
916    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18) !important;
917  }
918
919  /* An item close to the right hand edge opens leftwards instead. */
920  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children > ul.mega-sub-menu.tws-subs-flip, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children > ul.mega-sub-menu.tws-subs-flip {
921    left: auto !important;
922    right: 0 !important;
923  }
924
925  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children ul.mega-sub-menu li.mega-menu-item, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children ul.mega-sub-menu li.mega-menu-item {
926    display: block !important;
927    float: none !important;
928    clear: both !important;
929    width: 100% !important;
930    margin: 0 !important;
931    padding: 0 !important;
932    border: 0 !important;
933  }
934
935  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
936    display: block !important;
937    width: auto !important;
938    margin: 0 !important;
939    padding: var(--tws-subs-pad-y, 11px) var(--tws-subs-pad-x, 20px) !important;
940    line-height: var(--tws-subs-line-height, 1.6) !important;
941    border: 0 !important;
942    white-space: nowrap !important;
943    text-decoration: none !important;
944  }
945
946  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link:hover,
947  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link:focus,
948  #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link:active {
949    text-decoration: none !important;
950  }
951}
952</style>
953    		<style id="wp-custom-css">
954			 /* TWS CUSTOM STYLING - current stylesheet (v2_20). Single live version; Per-version changelog follows below. */
955
956/* 1_2 – Mobile advert block. */
957/* 1_3 – Boxed content frames and buttons. */
958/* 1_4 – Cleaner AdRotate blocks. */
959/* 1_5 – Embedded video player styling. */
960/* 1_6 – Venue listing. */
961/* 1_7 – Reduced portrait image height. */
962/* 1_8 – Dual portrait and landscape images. */
963/* 1_9 – Fixed the swiper mobile media query (missing px), a stray token in the venue-entry margin, and merged duplicate image rules. */
964/* 2_0 – .tws-price-box (RRP and link box) in the theme primary colour, replacing hard-coded red inline styles. */
965/* 2_1 – Three more dual-figure shapes: .tws-dual-square, .tws-dual-portrait-short, .tws-dual-portrait-tall. Existing pairs unchanged. */
966/* 2_2 – .tws-dual-video: two 9:16 video embeds side by side. Needs a class because the editor strips inline display:flex on save. */
967/* 2_3 – .tws-faq-question now also works on a body subheading via .single-post, not only inside .tws-faq-section. */
968/* 2_4 – .tws-product-grid: card grid for kit-bag, gift and best-of roundups. -2 default, -3, -4; one column on mobile. */
969/* 2_5 – .tws-cta: full-width promo, cover image one side, heading, copy and button the other. Image never cropped. */
970/* 2_6 – .tws-panel: tinted feature panel with a solid header bar. Bar uses the brand PRIMARY colour (Lee's call, over the white-on-gold contrast). */
971/* 2_7 – .tws-embed-frame: the tws-frame border with no padding or margin, so an embed sits flush. Also closed the unterminated 2_6 comment, which was swallowing .primary-colour and .secondary-colour on every site. */
972/* 2_8 – .tws-strand-break: divider between round-up strands. Sets its own border, because the Tailwind reset makes a plain hr invisible. */
973/* 2_9 – .tws-product-grid-1: one card per row, image left and copy right, so a single product fills the content width. */
974/* 2_10 – A product grid last inside a tws-frame loses its bottom margin. Added .tws-frame-number for the leading "No. 1" on a roundup heading. */
975/* 2_11 – tws-product-grid-1 image column to an even 50 per cent; the grid bottom margin removed outright; tws-frame-number up to 2.1em on a tight line height. */
976/* 2_12 – .tws-photo-grid: a photo set on an even grid. Columns -4 (default), -3, -2; shapes tws-photo-square, -landscape, -portrait-short, -portrait-tall. Two across below 1024px, and the shape never changes. */
977/* 2_13 – Comments and changelog condensed throughout. No CSS rule changed, so this is byte-different from 2_12 but visually identical. */
978/* 2_14 – .tws-photo-grid tiles are top-aligned. The theme's figure{justify-content:center} was surviving into the grid, so a tile with a one-line caption had its picture pushed down by half a caption line and sat out of line with its neighbours. */
979/* 2_15 – A video embedded inside a .tws-frame now fills the frame width at 16:9. WordPress oEmbeds a bare URL at a fixed 500x281, which sat small and hard left inside the box. */
980/* 2_16 – .tws-panel-media: a cut-out product picture on a tws-panel, breaking out above and below the box. The copy stops short of it on desktop; on mobile the picture drops under the copy. */
981/* 2_17 – The v2_15 video rule was matching EVERY iframe inside a tws-frame, so a form embed (the ShootingUK reader survey) was cropped to a 16:9 letterbox. Rescoped to video hosts and the WordPress video wrapper. */
982/* 2_18 – Top banner ad slots reserve their height before Google fills them (mobile 100px each; desktop 250px billboard, 90px leaderboard). Fixes the mobile layout shift that pushed the whole article down when the ads arrived – CLS 0.3, Search Console "needs improvement" on every URL. */
983/* 2_19 – Homepage on mobile: removed the 3px white line between the nav and the hero carousel (spacer +18px against the carousel's -15px pull-up). */
984/* 2_20 – .tws-product-grid columns are minmax(0, 1fr), so no card can push the grid wider than the text column. The in-article promos (tws-bss, tws-promo, tws-nlad) were being injected inside cards, frames and panels; the tws-promo-placement mu-plugin now moves them between the boxes, a moved promo takes the full grid row, and one still inside a box is hidden until it is moved. */
985
986
987.primary-colour { color: rgb(var(--color-primary)); }
988.secondary-colour { color: rgb(var(--color-secondary)); }
989
990/* Close gap between nav buttons */
991#mega-menu-primary_navigation { gap: 0px; }
992
993/* Make titles and standfirsts full width on desktop */
994main > section:first-child .lg\:w-\[calc\(70\%\-20px\)\] { width: 100% !important; }
995
996/* Adjustments to H1 headings */
997
998/* Desktop */
999.single-post h1 { font-size: 45px !important; }
1000
1001/* Mobile */
1002@media (max-width:600px) {
1003    .single-post h1 { font-size: 28px !important; line-height: 1.15 !important; }
1004}
1005
1006/* Adjustments to H2 headings */
1007.single-post h2 { font-size: 26px !important; padding-top: 15px; padding-bottom: 10px; margin: 0px !important; }
1008
1009/* Mobile */
1010@media (max-width:600px) {
1011    .single-post h2 { font-size: 24px !important; line-height: 1.2 !important; }
1012}
1013
1014/* Homepage Slider */
1015.swiper-wrapper h2 { font-size: 44px!important; line-height:1.15em!important; padding-bottom: 10px;}
1016.swiper-wrapper p { font-size: 20px!important; line-height:1.3em!important; padding-bottom: 10px;}
1017
1018@media (max-width:1024px) {
1019.swiper-wrapper h2 { font-size: 34px!important; line-height:1.15em!important; }
1020.swiper-wrapper p { font-size: 18px!important; line-height:1.2em!important; }
1021}
1022
1023@media (max-width:600px) {
1024.swiper-wrapper h2 { font-size: 28px!important; line-height:1.15em; }
1025.swiper-wrapper p { font-size: 15px!important; line-height:1.2em; }
1026}
1027
1028/* START - AdRotate stacked ad block */
1029.adrotate-ad-container, .a-single.a-4, .ad-stack, .billboard-and-leaderboard-ad { background: #ffffff!important;  }
1030.a-single.a-4, .ad-stack { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 0 !important; width: 100% !important; }
1031.a-single.a-4 .billboard-and-leaderboard-ad, .ad-stack .billboard-and-leaderboard-ad { width: 100% !important; min-width: 320px !important; display: flex !important; justify-content: center !important; align-items: center !important; padding: 0 !important; margin: 0 !important; border: 0 !important; height: auto !important; min-height: 0 !important; overflow: visible !important; }
1032
1033/* Reserve the top banner slots' height BEFORE Google fills them - CLS fix, 28 Aug 2026.
1034   The rule above zeroes min-height, so the page painted with the article at the top and
1035   then dropped 50-220px on mobile when the Billboard and Leaderboard arrived (PageSpeed
1036   measured 0.188 of a 0.3 CLS on the main element, Sporting Gun article, mobile). Reserving the
1037   tallest creative each slot can serve (GAM mapping: mobile 320x100 / 320x50, desktop
1038   billboard 970x250, leaderboard 970x90 / 728x90) means a filled slot moves nothing.
1039   Cost: a blank strip on the occasions a slot goes unfilled. min-height, not height, so
1040   an oversized creative still shows. Keep these numbers in step with the GAM size
1041   mapping. Do NOT display:none an empty slot - Google treats a hidden slot as
1042   unviewable and may stop filling it. */
1043@media (max-width:1023px) {
1044    .a-single.a-4 .billboard-and-leaderboard-ad,
1045    .ad-stack .billboard-and-leaderboard-ad { min-height: 100px !important; }
1046}
1047@media (min-width:1024px) {
1048    .a-single.a-4 .billboard-and-leaderboard-ad:first-child,
1049    .ad-stack .billboard-and-leaderboard-ad:first-child { min-height: 250px !important; }
1050    .a-single.a-4 .billboard-and-leaderboard-ad + .billboard-and-leaderboard-ad,
1051    .ad-stack .billboard-and-leaderboard-ad + .billboard-and-leaderboard-ad { min-height: 90px !important; }
1052}
1053
1054/* Gap between the fixed nav and the page content - desktop, all templates.
1055   Measured, not hard-coded: the tws-header-height mu-plugin publishes the live header
1056   height as --tws-header-h, so one expression covers all four spacer variants (these
1057   were 150 / 114 / 160 / 124, each retuned per site). The var() fallback applies on
1058   first paint and if the script ever fails, so it is deliberately generous - too large
1059   shows a gap, too small hides content behind the nav. */
1060@media (min-width:1024px) {
1061    .with-ad-and-cta,
1062    .with-ad-and-no-cta,
1063    .without-ad-and-has-cta,
1064    .without-ad-and-cta { margin-top: calc(var(--tws-header-h, 126px) + 32px) !important; }
1065
1066    /* Homepage hero: a 16px band rather than the article's +32px. Flush measured exactly
1067       right, but a full-bleed photo running to the nav edge reads as if it continues
1068       behind it. Scoped to body.home and the two ad-less variants only: on a homepage
1069       that does carry a top banner the spacer holds that advert, and flush would push it
1070       against the nav. Needs the measured value - the header differs per site (126px
1071       Airgun World, 118px ShootingUK) and a few pixels over shows as a white line. */
1072    body.home .without-ad-and-has-cta,
1073    body.home .without-ad-and-cta { margin-top: calc(var(--tws-header-h, 126px) + 16px) !important; }
1074
1075    /* NOTE: the hero sidebar's own padding-top: 40px, set inline in
1076       blocks/hero-banner-carousel/render.blade.php, is deliberately LEFT ALONE. Zeroed
1077       on 28 July and reverted the same day - the "Latest news" heading needs that air. */
1078}
1079
1080/* Spacing between stacked banner ads - applied only BETWEEN TWO FILLED SLOTS.
1081   Google prints every slot wrapper whether it fills or not; an unfilled one renders at
1082   height 0 but is still a flex item, so it used to collect the 10px gap plus a 10px
1083   margin and leave 20px of empty space (seen on Trout & Salmon). The gap is now 0 and
1084   the 20px comes from :has(iframe) on both sides. Deliberately NOT display:none on an
1085   empty slot - Google treats a hidden slot as unviewable and may then never fill it.
1086   Self-correcting: if a slot fills late, :has() re-evaluates. */
1087.adrotate-ad-container .ad-stack, .ad-stack, .a-single.a-4 { gap: 0 !important; }
1088.a-single.a-4 .billboard-and-leaderboard-ad + .billboard-and-leaderboard-ad, .ad-stack .billboard-and-leaderboard-ad + .billboard-and-leaderboard-ad { margin-top: 0 !important; }
1089.ad-stack .billboard-and-leaderboard-ad:has(iframe) ~ .billboard-and-leaderboard-ad:has(iframe),
1090.a-single.a-4 .billboard-and-leaderboard-ad:has(iframe) ~ .billboard-and-leaderboard-ad:has(iframe) { margin-top: 20px !important; }
1091
1092/* Gap between the fixed nav and the top banner ads - mobile, all templates.
1093   Was 125px + 20px padding = 145px effective, less than the mobile header (about 152px
1094   when the CTA strapline wraps to two lines), so the ad sat behind the nav. padding-top
1095   removed so margin-top is the true offset. Now measured via --tws-header-h from the
1096   tws-header-height mu-plugin, which removes the three-line-strapline risk; the +18px
1097   is the clear air Lee settled on against a measured 153px header. */
1098@media (max-width:1023px) {
1099    .with-ad-and-cta,
1100    .with-ad-and-no-cta,
1101    .without-ad-and-has-cta,
1102    .without-ad-and-cta { margin-top: calc(var(--tws-header-h, 152px) + 18px) !important; padding-top: 0 !important; }
1103    .with-ad-and-cta, .with-ad-and-no-cta { background: transparent !important; background-color: transparent !important; }
1104    .with-ad-and-cta > section, .with-ad-and-no-cta > section { margin-top: 0 !important; background: transparent !important; background-color: transparent !important; }
1105    /* Homepage hero, mobile: the carousel pulls itself up 15px (mt-[-15px] on #hero-banner in
1106       blocks/hero-banner-carousel/render.blade.php), so the +18px above left a 3px white line
1107       under the nav, most visible on the black ShootingUK header. +14px lets the photo tuck
1108       1px under the nav so a rounded header height can never open a hairline. Same scoping
1109       as the desktop body.home rule - ad-less variants only. */
1110    body.home .without-ad-and-has-cta,
1111    body.home .without-ad-and-cta { margin-top: calc(var(--tws-header-h, 152px) + 14px) !important; }
1112    /* gap handled by the :has(iframe) rule above so unfilled slots add nothing */
1113    .a-single.a-4, .ad-stack { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 0 !important; width: 100% !important; }
1114}
1115.adrotate-ad-container { margin-top: 0 !important; margin-bottom: 10px !important; padding-top: 0 !important; }
1116.adrotate-ad-container section { margin-top: 10px !important; }
1117
1118/* Sidebar advert slots - kill the gap left by an unfilled slot.
1119   Each sidebar advert is wrapped in a div classed "flex justify-center items-center
1120   mb-[40px]" (single-post, single-video-post and blocks/paginated-posts Blade files).
1121   That 40px is unconditional, so every GPT slot that does not fill still contributes it
1122   and the gaps go uneven. Filled slots now get 30px, unfilled ones nothing. The class
1123   name stays mb-[40px] because that is what Blade prints; only the value is overridden.
1124   That class combination is used nowhere else. As above, the slot is never hidden. */
1125.flex.justify-center.items-center.mb-\[40px\] {
1126    margin-bottom: 0 !important;
1127}
1128.flex.justify-center.items-center.mb-\[40px\]:has(iframe),
1129.flex.justify-center.items-center.mb-\[40px\]:has(img) {
1130    margin-bottom: 30px !important;
1131}
1132
1133/* 1px grey outline around every rendered advert - white creatives were disappearing
1134   into the page. outline rather than border on purpose: it sits outside the box and
1135   takes no layout space, so a fixed-size creative is neither nudged nor clipped. Drawn
1136   on the rendered iframe or image only, so an unfilled slot shows nothing rather than a
1137   grey line. The google_ads_iframe_ prefix catches every Google-served advert; the two
1138   wrapper selectors catch direct AdRotate image banners. */
1139[id^="google_ads_iframe_"] iframe,
1140.billboard-and-leaderboard-ad img,
1141.flex.justify-center.items-center.mb-\[40px\] img {
1142    outline: 1px solid #cccccc !important;
1143}
1144
1145/* END - AdRotate stacked ad block */
1146
1147/* Embedded Video styling - making the player larger */
1148/* Make embedded video full width of its column */
1149.wysiwyg-content .inline-video-block-container { width: 100% !important; }
1150
1151/* Default / LARGE video - 80% of the column */
1152.wysiwyg-content .inline-video-block-container iframe {
1153    width: 80% !important;
1154    height: auto !important;
1155    aspect-ratio: 16 / 9 !important;
1156    max-width: none !important;
1157    display: block !important;
1158    margin: 0 auto 20px !important;
1159}
1160
1161/* SMALL video - 50% of the column */
1162.wysiwyg-content .inline-video-block-container.video-small iframe {
1163    width: 50% !important;
1164}
1165
1166/* Override the fixed mobile sizing too */
1167@media (max-width:500px) {
1168    .wysiwyg-content .inline-video-block-container iframe {
1169        width: 100% !important;
1170        height: auto !important;
1171        aspect-ratio: 16 / 9 !important;
1172        margin: 0 auto 10px !important;
1173    }
1174}
1175/* Yoast breadcrumbs - tighten the gap below the top banner ads, desktop only.
1176   The space above comes from the block-container Blade component, which we cannot reach
1177   without a rebuild: lg:mt-[40px] on desktop but only mt-[20px] on mobile, so a shared
1178   -20px cancelled the mobile gap and pulled the breadcrumbs into the bottom ad. */
1179.yoast-breadcrumbs { margin-top: 0px !important; margin-bottom: 25px !important; }
1180@media (min-width:1024px) {
1181    /* Desktop: the section carries lg:mt-[40px], so -20px halves the gap. Scoped to
1182       pages that actually carry a header advert - on an ad-less page the spacer div is
1183       empty, so the section margin collapses into it rather than adding to it, and the
1184       -20px left the breadcrumbs flush against the nav (seen on airgun-world.com). */
1185    .min-h-screen:has(> .with-ad-and-cta) .yoast-breadcrumbs,
1186    .min-h-screen:has(> .with-ad-and-no-cta) .yoast-breadcrumbs { margin-top: -20px !important; }
1187}
1188
1189/* Reduce spacing beneath author/share block */
1190.single-post .wysiwyg-content section.relative.lg\:mt-\[40px\].mt-\[20px\] { margin-top: 10px !important; }
1191
1192/* Change Leading of 1 to 1.2 for better readability of 'Excerpt' field */
1193.leading-\[1\] { line-height: 1.2 !important; }
1194
1195/* Increase size of author name */
1196.author-details span:first-child { font-size: 15px !important; }
1197
1198/* Sentence case for sidebar blocks - target the specific h3 */
1199h3.block.w-full.md\:w-fit.bg-black.text-white { text-transform: lowercase; }
1200h3.block.w-full.md\:w-fit.bg-black.text-white::first-letter { text-transform: uppercase; }
1201
1202/* Reduce spacing between Gutenberg/editorial blocks */
1203.spu-content, .wysiwyg-content { display: flex; flex-direction: column; gap: 12px; }
1204
1205/* Reduce height of portrait and landscape images */
1206.wp-caption.alignnone {
1207  text-align: center;   /* centres the image and caption in the text column */
1208}
1209
1210.wp-caption.alignnone img {
1211  max-height: 70vh !important;   /* cap relative to viewport height */
1212  width: auto !important;        /* width follows the capped height, preserving ratio */
1213  height: auto !important;       /* lets landscape images behave normally */
1214  max-width: 100% !important;    /* never wider than the text column */
1215  margin-inline: auto;           /* centres within the figure */
1216  display: block;
1217}
1218
1219/* ============================================================
1220   tws-dual-figure
1221   Two images side by side on desktop, each with its own caption,
1222   stacked on mobile. The default height suits portrait; add
1223   tws-dual-landscape to the wrapper for a shorter 4:3 box.
1224   ============================================================ */
1225
1226.tws-dual-figure {
1227  display: flex;
1228  gap: 30px;
1229  align-items: self-start;       /* tops aligned; equal-height handled per image */
1230  margin: 40px 0;
1231}
1232
1233/* Beat the theme's figure.wp-caption{display:flex;flex-direction:column;
1234   max-width:100%} and its 40px figure margins */
1235.tws-dual-figure figure.wp-caption {
1236  flex: 1 1 0 !important;        /* two equal columns */
1237  max-width: 50% !important;
1238  margin: 0 !important;
1239  display: flex !important;
1240  flex-direction: column !important;
1241}
1242
1243.tws-dual-figure figure.wp-caption img {
1244  width: 100% !important;
1245  height: 60vh !important;       /* shared height equalises the pair (portrait default) */
1246  object-fit: cover !important;  /* fill the box, crop gracefully */
1247  object-position: center !important;
1248  max-width: 100% !important;
1249}
1250
1251/* Landscape variant: two 4:3 images side by side, shorter box.
1252   Add tws-dual-landscape to the wrapper alongside tws-dual-figure. */
1253.tws-dual-figure.tws-dual-landscape figure.wp-caption img {
1254  height: 36vh !important;       /* tune to taste; suits 4:3 in two columns */
1255}
1256
1257/* ---- v2_1 side-by-side variants ----------------------------
1258   One modifier on the wrapper alongside tws-dual-figure, each a
1259   fixed ratio so the two always match height:
1260     .tws-dual-square          two square (1:1)
1261     .tws-dual-portrait-short  two shorter portrait (4:5)
1262     .tws-dual-portrait-tall   two taller portrait (2:3)
1263     .tws-dual-landscape       two landscape (4:3), above
1264   With no modifier the original 60vh portrait box applies, so
1265   existing posts are untouched. */
1266
1267.tws-dual-figure.tws-dual-square figure.wp-caption img {
1268  height: auto !important;
1269  aspect-ratio: 1 / 1 !important;    /* square */
1270}
1271
1272.tws-dual-figure.tws-dual-portrait-short figure.wp-caption img {
1273  height: auto !important;
1274  aspect-ratio: 4 / 5 !important;    /* shorter portrait */
1275}
1276
1277.tws-dual-figure.tws-dual-portrait-tall figure.wp-caption img {
1278  height: auto !important;
1279  aspect-ratio: 2 / 3 !important;    /* taller portrait */
1280}
1281/* ---- end v2_1 side-by-side variants --------------------------------------- */
1282
1283/* Stack vertically on mobile */
1284@media (max-width: 767px) {
1285  .tws-dual-figure {
1286    flex-direction: column;
1287    gap: 0;
1288  }
1289  .tws-dual-figure figure.wp-caption {
1290    max-width: 100% !important;
1291    margin: 0 0 20px 0 !important;
1292  }
1293  .tws-dual-figure figure.wp-caption img {
1294    height: auto !important;     /* natural height when stacked */
1295    max-height: 80vh !important;
1296    object-fit: contain !important;
1297  }
1298  /* Let the v2_1 variants fall back to natural height when stacked */
1299  .tws-dual-figure.tws-dual-square figure.wp-caption img,
1300  .tws-dual-figure.tws-dual-portrait-short figure.wp-caption img,
1301  .tws-dual-figure.tws-dual-portrait-tall figure.wp-caption img {
1302    aspect-ratio: auto !important;
1303  }
1304}
1305
1306/* START - TWS triple figure (3 square images) */
1307.tws-triple-figure {
1308  display: flex;
1309  gap: 24px;
1310  align-items: flex-start;
1311  margin: 40px 0;
1312}
1313
1314.tws-triple-figure figure.wp-caption {
1315  flex: 1 1 0 !important;
1316  max-width: calc(33.333% - 16px) !important;
1317  margin: 0 !important;
1318  display: flex !important;
1319  flex-direction: column !important;
1320}
1321
1322.tws-triple-figure figure.wp-caption img {
1323  width: 100% !important;
1324  aspect-ratio: 1 / 1 !important;
1325  object-fit: cover !important;
1326  object-position: center !important;
1327  height: auto !important;
1328  max-width: 100% !important;
1329}
1330
1331/* Stack vertically on mobile */
1332@media (max-width:767px) {
1333  .tws-triple-figure {
1334    flex-direction: column;
1335    gap: 0;
1336  }
1337  .tws-triple-figure figure.wp-caption {
1338    max-width: 100% !important;
1339    margin: 0 0 20px 0 !important;
1340  }
1341  .tws-triple-figure figure.wp-caption img {
1342    aspect-ratio: 1 / 1 !important;
1343  }
1344}
1345/* END - TWS triple figure */
1346
1347/* ============================================================
1348   START - TWS photo grid (tws-photo-grid)   v2_12
1349   An even grid for a SET of photographs. Every tile in one grid
1350   shares one shape, so mixed originals sit on a clean grid with
1351   no ragged heights. The wrapper takes a column count and a shape:
1352     columns  tws-photo-grid-4 (default), -3, -2
1353     shape    tws-photo-square           1:1 (default)
1354              tws-photo-landscape        4:3
1355              tws-photo-portrait-short   4:5
1356              tws-photo-portrait-tall    2:3
1357   Same four shape names as tws-dual-figure. Every count drops to
1358   two across below 1024px; the shape never changes. Class-based
1359   because inline grid is stripped from post content on save.
1360   Supersedes tws-triple-figure for photo sets.
1361   ============================================================ */
1362
1363.tws-photo-grid {
1364  display: grid;
1365  grid-template-columns: repeat(4, 1fr);
1366  gap: 10px;
1367  margin: 34px 0;
1368}
1369.tws-photo-grid.tws-photo-grid-4 { grid-template-columns: repeat(4, 1fr); }
1370.tws-photo-grid.tws-photo-grid-3 { grid-template-columns: repeat(3, 1fr); }
1371.tws-photo-grid.tws-photo-grid-2 { grid-template-columns: repeat(2, 1fr); }
1372
1373/* Beat the theme's figure.wp-caption rules and its 40px figure margins */
1374.tws-photo-grid figure.wp-caption {
1375  margin: 0 !important;
1376  padding: 0 !important;
1377  width: 100% !important;
1378  max-width: 100% !important;
1379  display: flex !important;
1380  flex-direction: column !important;
1381  align-items: stretch !important;
1382  justify-content: flex-start !important;  /* v2_14 - see below */
1383}
1384
1385/* v2_14. Each tile is a grid item and stretches to the height of the
1386   tallest tile in its row. The theme sets figure{justify-content:center},
1387   which this component did not override, so the picture-and-caption stack
1388   was being centred in that stretched box: a tile with a one-line caption
1389   had its picture pushed down by half a caption line while a neighbour
1390   with two lines stayed put, and the row looked ragged. Starting the
1391   stack at the top puts every picture in a row on the same line, and
1392   every caption with it. */
1393
1394.tws-photo-grid figure.wp-caption img {
1395  width: 100% !important;
1396  height: auto !important;
1397  max-width: 100% !important;
1398  max-height: none !important;
1399  aspect-ratio: 1 / 1 !important;          /* square is the default shape */
1400  object-fit: cover !important;
1401  object-position: center !important;
1402  display: block !important;
1403  margin: 0 !important;
1404  background: #f0f0f0;
1405}
1406
1407/* ---- shape modifiers. Pick the shape the set already is: a
1408   portrait set in a portrait grid loses almost nothing, the same
1409   set in a landscape grid loses more than half the frame. ---- */
1410.tws-photo-grid.tws-photo-square figure.wp-caption img         { aspect-ratio: 1 / 1 !important; }
1411.tws-photo-grid.tws-photo-landscape figure.wp-caption img      { aspect-ratio: 4 / 3 !important; }
1412.tws-photo-grid.tws-photo-portrait-short figure.wp-caption img { aspect-ratio: 4 / 5 !important; }
1413.tws-photo-grid.tws-photo-portrait-tall figure.wp-caption img  { aspect-ratio: 2 / 3 !important; }
1414/* ---- end shape modifiers --------------------------------- */
1415
1416/* Tile captions are optional and sit smaller than a body
1417   caption, because a full-size caption under a quarter-width
1418   tile reads heavier than the picture it belongs to. */
1419.tws-photo-grid figure.wp-caption figcaption.wp-caption-text {
1420  font-size: 0.72rem !important;
1421  line-height: 1.35em !important;
1422  padding: 6px 0 0 0 !important;
1423  margin: 0 !important;
1424}
1425
1426/* One collective credit line under the whole grid, for a set
1427   that shares a photographer and needs no tile captions. */
1428.tws-photo-grid-credit {
1429  font-size: 0.8rem !important;
1430  font-style: italic;
1431  color: #555555;
1432  text-align: right;
1433  margin: -24px 0 34px !important;
1434}
1435
1436/* Tablet and mobile: two across whatever the desktop count.
1437   The shape is deliberately NOT changed here - a portrait
1438   grid stays portrait on a phone. */
1439@media (max-width: 1023px) {
1440  .tws-photo-grid,
1441  .tws-photo-grid.tws-photo-grid-4,
1442  .tws-photo-grid.tws-photo-grid-3,
1443  .tws-photo-grid.tws-photo-grid-2 {
1444    grid-template-columns: repeat(2, 1fr);
1445    gap: 8px;
1446  }
1447}
1448@media (max-width: 600px) {
1449  .tws-photo-grid { margin: 24px 0; }
1450  .tws-photo-grid figure.wp-caption figcaption.wp-caption-text { font-size: 0.68rem !important; }
1451}
1452/* END - tws-photo-grid */
1453
1454/* Image caption fix */
1455.wp-block-image figure, figure.wp-block-image { display: flex !important; flex-direction: column !important; align-items: center; }
1456.wp-block-image figcaption { margin-top: 0.4rem; font-size: 0.9rem ; }
1457figure.wp-block-image { margin: 1rem 0 !important; }
1458figcaption.wp-caption-text { font-size: 0.85rem !important; line-height: 1.3em!important; font-weight: 700 !important; font-style: italic !important; padding: 10px 0px 5px 0px; text-align: center !important; }
1459figure.wp-caption { align-items: center !important; }
1460
1461/* Ensure caption spans full width beneath image */
1462.wp-block-image figcaption { width: 100% !important; text-align: center; }
1463
1464/* Related articles styling */
1465.related-articles p { padding: 7px 0; border-bottom: 1px solid #f0f0f0; line-height: 1.6; }
1466.related-articles p:last-child { border-bottom: none; }
1467.related-articles a { text-decoration: none; color: inherit; }
1468.related-articles a:hover { text-decoration: underline; }
1469.related-articles strong { font-weight: 600; }
1470
1471/* FAQ section – title heading */
1472.tws-faq-section h2.tws-faq-title { font-size: 22px; }
1473
1474/* FAQ section – individual questions */
1475/* FAQ questions, and body question-led subheadings reusing the same look (v2_3) */
1476.tws-faq-section .tws-faq-question,
1477.single-post .tws-faq-question { font-size: 20px; color: rgb(var(--color-primary)); }
1478
1479/* Review table styling */
1480.tws-table-wrapper { margin-bottom: 20px }
1481@media (max-width:600px) {
1482    .tws-table-wrapper { overflow-x: auto }
1483}
1484
1485/* Specification Table */
1486.tws-spec-table { width: 100%; border-collapse: collapse }
1487.tws-spec-table th { background-color: rgb(var(--color-primary)); color: #fff; padding: 5px; text-align: left; border-bottom: 1px solid #ddd }
1488.tws-spec-table td { padding: 5px; text-align: left; border-bottom: 1px solid #ddd }
1489.tws-spec-table tbody tr:nth-child(odd) { background-color: #f5f5f5 }
1490.tws-spec-table tbody tr:nth-child(even) { background-color: #e9e9e9 }
1491
1492/* Recipe meta strip – prep/cook times, serves, difficulty */
1493.tws-recipe-meta { background-color: #f9f9f9; border-left: 4px solid rgb(var(--color-primary)); padding: 16px 20px; margin: 24px 0; }
1494.tws-recipe-meta ul { display: flex; flex-wrap: wrap; gap: 18px 32px; margin: 0; padding: 0; list-style: none !important; }
1495.tws-recipe-meta ul li { flex: 1 1 0; min-width: 120px; margin: 0; padding: 0; font-size: 1em; line-height: 1.4; color: #333333; list-style: none !important; }
1496.tws-recipe-meta ul li::before, .tws-recipe-meta ul li::marker { content: none !important; }
1497.tws-recipe-meta ul li strong { display: block; font-size: 0.95em; text-transform: uppercase; letter-spacing: 0.04em; color: rgb(var(--color-primary)); font-weight: 700; margin-bottom: 3px; }
1498
1499/* Stack vertically on small screens */
1500@media (max-width:600px) {
1501    .tws-recipe-meta ul { flex-direction: column; gap: 14px; }
1502    .tws-recipe-meta ul li strong { display: inline; font-size: 0.95em; text-transform: none; letter-spacing: 0; color: #d13b2e; margin-bottom: 0; }
1503    .tws-recipe-meta ul li strong::after { content: " "; }
1504}
1505
1506/* Dividers above sections */
1507.tws-recipe-method, .tws-faq-section, .related-articles { border-top: 1px solid #dddddd; padding-top: 28px; margin-top: 32px; }
1508.tws-recipe-method ~ h2 { margin-top: 0; padding-top: 0; }
1509.tws-recipe-method ~ h2::before { content: ''; display: block; border-top: 1px solid #e0e0e0; margin-top: 48px; margin-bottom: 40px; }
1510
1511/* Recipe Chef block */
1512.tws-chef-bio { display: flex; gap: 24px; align-items: flex-start; border: 1px solid rgb(var(--color-primary)); border-radius: 0px; padding: 24px; margin: 48px 0; background-color: rgba(var(--color-primary), 0.1); }
1513.tws-chef-bio__image { flex: 0 0 300px; width: 300px; height: 300px; overflow: hidden; border-radius: 2px; }
1514.tws-chef-bio__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
1515.tws-chef-bio__content { flex: 1; }
1516.tws-chef-bio__content h2 { margin-top: 0; margin-bottom: 12px; font-size: 1.1em; }
1517.tws-chef-bio__content p { margin-top: 0; margin-bottom: 12px; font-size: 0.95em; line-height: 1.6; }
1518.tws-chef-bio__content p:last-child { margin-bottom: 0; }
1519@media (max-width:640px) {
1520    .tws-chef-bio { flex-direction: column; }
1521    .tws-chef-bio__image { flex: 0 0 auto; width: 100%; height: 200px; }
1522}
1523
1524/* START - Father's Day Gifts*/
1525#fathers-day-gifts { font-family: 'Georgia', 'Times New Roman', serif; margin: 2rem 0; }
1526#fathers-day-gifts .fdg-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
1527
1528/* Card */
1529#fathers-day-gifts .fdg-card { display: flex; flex-direction: column; border: 2px solid #ddd; background: #fff; }
1530
1531/* Image area */
1532#fathers-day-gifts .fdg-img-wrap { width: 100%; height: 300px; display: flex; align-items: center; justify-content: center; background: #fff; padding: 20px; box-sizing: border-box; border-bottom: 1px solid #ddd; }
1533#fathers-day-gifts .fdg-img-wrap img { max-width: 100%; max-height: 260px; width: auto; height: auto; object-fit: contain; display: block; }
1534
1535/* Card body */
1536#fathers-day-gifts .fdg-body { padding: 18px; display: flex; flex-direction: column; flex: 1; }
1537#fathers-day-gifts .fdg-title { font-family: 'Georgia', 'Times New Roman', serif; font-size: 20px; font-weight: 800 !important; color: rgb(var(--color-primary)); margin: 0 0 8px; line-height: 1.4; }
1538#fathers-day-gifts .fdg-price { font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: bold; color: #1a1a1a; margin: 0 0 10px; }
1539#fathers-day-gifts .fdg-desc { font-family: 'Open Sans', sans-serif; font-size: 16px; color: #444; line-height: 1.6; flex: 1; margin: 0 0 18px; }
1540
1541/* CTA button */
1542#fathers-day-gifts .fdg-cta { display: block; width: 100%; padding: 12px 20px; background: rgb(var(--color-primary)); color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: bold; text-decoration: none; text-align: center; letter-spacing: 0.04em; text-transform: uppercase; box-sizing: border-box; transition: background 0.2s ease; }
1543#fathers-day-gifts .fdg-cta:hover { background: rgb(var(--color-secondary)); color: #fff; text-decoration: none; }
1544
1545/* Responsive Grid settings */
1546@media (max-width:960px) {
1547    #fathers-day-gifts .fdg-grid { grid-template-columns: repeat(2, 1fr); }
1548}
1549@media (max-width:600px) {
1550    #fathers-day-gifts .fdg-grid { grid-template-columns: 1fr; }
1551}
1552
1553/* Increase leading of p tags inside Father's Day CTA block */
1554.full-width-text-image-cta p { line-height: 1.5 }
1555
1556/* END - Father's Day Gifts*/
1557
1558/* Content frames and buttons */
1559.tws-frame { border: 1px solid rgb(var(--color-primary)); border-left: 10px solid rgb(var(--color-primary)); padding: 28px 32px 24px; margin-top: 30px; margin-bottom: 40px; margin-right: 0px; }
1560.tws-frame:first-of-type { margin-top: 40px; }
1561.tws-frame h2 { margin-top: 0; }
1562
1563/* Embed frame - the tws-frame border with no padding and no margin, so an embed
1564   (iframe, oEmbed wrapper, form, map, player) sits flush to it. Embeds carry their
1565   own spacing. Use .tws-frame for normal copy blocks. */
1566.tws-embed-frame { border: 1px solid rgb(var(--color-primary)); border-left: 10px solid rgb(var(--color-primary)); padding: 0; margin: 0; }
1567.tws-embed-frame > * { margin-top: 0; margin-bottom: 0; }
1568.tws-embed-frame iframe { display: block; max-width: 100%; }
1569
1570/* v2_15, rescoped in v2_17. A video embedded INSIDE a tws-frame,
1571   alongside copy - a tying demonstration under a fly dressing, say.
1572   WordPress oEmbeds a bare URL at a fixed 500x281, which sits small and
1573   hard left in a frame that is half as wide again. Pin it to the frame
1574   width at 16:9 instead. This is tws-frame only; tws-embed-frame above
1575   is for a frame that holds nothing but the embed, and the dual-video
1576   component sets its own.
1577   v2_17: this was written as a bare .tws-frame iframe, which caught
1578   EVERY iframe in a frame, not only videos. A form embed (Dotdigital)
1579   is a tall iframe that sets its own height, and height:auto with a
1580   16:9 ratio cropped it to a letterbox. Matched on video hosts and on
1581   the WordPress video embed wrapper instead, so a form, a map or a
1582   third party widget in a frame is left alone. */
1583.tws-frame iframe[src*="youtube.com"],
1584.tws-frame iframe[src*="youtube-nocookie.com"],
1585.tws-frame iframe[src*="youtu.be"],
1586.tws-frame iframe[src*="vimeo.com"],
1587.tws-frame iframe[src*="dailymotion.com"],
1588.tws-frame iframe[src*="player.twitch.tv"],
1589.tws-frame .wp-block-embed.is-type-video iframe,
1590.tws-frame .inline-video-block-container iframe {
1591  width: 100% !important;
1592  height: auto !important;
1593  aspect-ratio: 16 / 9 !important;
1594  max-width: 100% !important;
1595  display: block;
1596}
1597
1598.tws-btn { display: inline-block; margin-top: 12px; padding: 10px 20px; background-color: rgb(var(--color-primary)); color: #ffffff; font-weight: bold; font-size: 0.9em; text-decoration: none; border-radius: 0px; transition: background-color 0.2s ease; }
1599.tws-btn:hover { background-color: rgb(var(--color-secondary)); color: #ffffff; }
1600
1601/* Button row - sits two or more .tws-btn side by side with even spacing,
1602   wraps neatly on narrow screens. Wrap the buttons in a div with class tws-btn-row */
1603.tws-btn-row { display: flex; flex-wrap: wrap; gap: 15px; align-items: center; padding-top:10px;}
1604.tws-btn-row .tws-btn { margin-top: 0; }
1605
1606/* Product price and link box (buying guides / product reviews) */
1607.tws-price-box { background-color: #f9f9f9; border-left: 4px solid rgb(var(--color-primary)); padding: 15px 20px; margin-top: 20px; }
1608.tws-price-box p { margin: 0; font-size: 1em; font-weight: normal; line-height: 1.5; }
1609.tws-price-box .tws-price-rrp { color: #333333; margin-bottom: 5px; }
1610.tws-price-box .tws-price-link { color: rgb(var(--color-primary)); font-weight: bold; text-decoration: none; }
1611.tws-price-box .tws-price-link:hover { color: rgb(var(--color-secondary)); text-decoration: none; }
1612
1613/* START - TWS Venue listing */
1614
1615/* Listing wrapper */
1616.tws-venue-listing { width: 100%; }
1617
1618/* Single entry - boxed, mirrors .tws-frame */
1619.tws-venue-listing .tws-venue-entry { border: 1px solid rgb(var(--color-primary)); border-left: 10px solid rgb(var(--color-primary)); padding: 30px; margin: 20px 0 30px; }
1620
1621/* County / region label */
1622.tws-venue-listing .tws-venue-county { display: block; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgb(var(--color-primary)); margin-bottom: 4px; }
1623
1624/* Venue name (H2) */
1625.tws-venue-listing h2.tws-venue-name { font-size: 24px !important; line-height: 1.25 !important; font-weight: 700; margin: 0 0 12px !important; padding: 0 !important; }
1626
1627/* Body copy - inherits the site's default paragraph styling,
1628   only spacing is set here */
1629.tws-venue-listing .tws-venue-entry p { margin: 0 0 12px; }
1630
1631/* Contact line (phone) */
1632.tws-venue-listing .tws-venue-contact { margin-bottom: 14px; }
1633
1634/* Website button - mirrors .tws-btn */
1635.tws-venue-listing .tws-venue-button { margin: 0; }
1636.tws-venue-listing .tws-venue-button-link { display: inline-block; padding: 10px 20px; background-color: rgb(var(--color-primary)); color: #ffffff; font-weight: bold; font-size: 0.9em; text-decoration: none; border-radius: 0px; transition: background-color 0.2s ease; }
1637.tws-venue-listing .tws-venue-button-link:hover { background-color: rgb(var(--color-secondary)); color: #ffffff; text-decoration: none; }
1638
1639/* Entry inner layout - text 65% / image 35% */
1640.tws-venue-listing .tws-venue-inner { display: flex; flex-direction: row; gap: 24px; align-items: flex-start; }
1641.tws-venue-listing .tws-venue-content { flex: 0 0 65%; min-width: 0; }
1642.tws-venue-listing .tws-venue-image { flex: 0 0 calc(35% - 24px); }
1643.tws-venue-listing .tws-venue-image img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: center; }
1644
1645/* Mobile - image above text */
1646@media (max-width:600px) {
1647    .tws-venue-listing h2.tws-venue-name { font-size: 22px !important; }
1648    .tws-venue-listing .tws-venue-entry { padding: 22px 22px 20px; margin-bottom: 18px; }
1649    .tws-venue-listing .tws-venue-inner { flex-direction: column; gap: 16px; }
1650    .tws-venue-listing .tws-venue-image { flex: none; width: 100%; }
1651    .tws-venue-listing .tws-venue-image img { aspect-ratio: 16 / 9; }
1652}
1653
1654/* END - TWS Venue listing */
1655
1656
1657/* ============================================================
1658   tws-dual-video  (v2_2)
1659   Two video embeds side by side, e.g. portrait YouTube Shorts.
1660   Add tws-dual-video to a tws-dual-figure wrapper whose two
1661   figure.wp-caption blocks each hold a bare YouTube URL, which
1662   WordPress oEmbeds. Needs a class because inline display:flex is
1663   stripped from post content on save.
1664   ============================================================ */
1665
1666.tws-dual-figure.tws-dual-video {
1667  gap: 16px;
1668  max-width: 760px;
1669  margin-left: auto;
1670  margin-right: auto;
1671  justify-content: center;
1672  align-items: flex-start;
1673}
1674
1675.tws-dual-figure.tws-dual-video figure.wp-caption {
1676  max-width: 340px !important;
1677  text-align: center;
1678}
1679
1680/* label sits above its video */
1681.tws-dual-figure.tws-dual-video figure.wp-caption p { margin: 0 0 8px 0 !important; }
1682
1683/* fill each column at a portrait (9:16) ratio, which suits Shorts */
1684.tws-dual-figure.tws-dual-video figure.wp-caption iframe {
1685  width: 100% !important;
1686  height: auto !important;
1687  aspect-ratio: 9 / 16 !important;
1688  max-width: 100% !important;
1689  display: block;
1690}
1691
1692/* keep the two shorts side by side on mobile too, just smaller */
1693@media (max-width: 767px) {
1694  .tws-dual-figure.tws-dual-video { flex-direction: row !important; gap: 10px; }
1695  .tws-dual-figure.tws-dual-video figure.wp-caption { max-width: 50% !important; margin: 0 !important; }
1696}
1697
1698/* END - TWS dual video */
1699
1700
1701/* ============================================================
1702   tws-product-grid  (v2_4)
1703   Card grid for kit-bag, gift and best-of roundups. Each card is
1704   a square product image on white, the name, a price and retailer
1705   link, and a short description. Add -2 (default look), -3 or -4
1706   for the desktop column count; all collapse to one column on
1707   mobile. Class-based because inline grid/flex is stripped on save.
1708   ============================================================ */
1709
1710.tws-product-grid {
1711  display: grid;
1712  grid-template-columns: repeat(2, minmax(0, 1fr));
1713  gap: 24px;
1714  margin: 32px 0;
1715}
1716.tws-product-grid.tws-product-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
1717.tws-product-grid.tws-product-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
1718
1719/* v2_20 – a card never forces its column wider than its share of the grid.
1720   The in-article promo boxes are inserted after the Nth paragraph and count the
1721   paragraphs inside the tws- boxes, so they can land inside a card, frame or panel.
1722   The tws-promo-placement mu-plugin moves each one to sit between the boxes: in a
1723   product grid it becomes a full-width row after the row it landed in. Until it
1724   is moved (or if the plugin is missing) a promo inside a box stays hidden, so the
1725   page never shows it squashed or pushes the grid under the sidebar. */
1726.tws-product-card { min-width: 0; }
1727.tws-product-grid > .tws-bss,
1728.tws-product-grid > .tws-promo,
1729.tws-product-grid > .tws-nlad,
1730.tws-product-grid > .tws-promo-band { grid-column: 1 / -1; margin: 0 !important; }
1731.tws-product-card .tws-bss, .tws-product-card .tws-promo, .tws-product-card .tws-nlad,
1732.tws-frame .tws-bss, .tws-frame .tws-promo, .tws-frame .tws-nlad,
1733.tws-panel .tws-bss, .tws-panel .tws-promo, .tws-panel .tws-nlad,
1734.tws-faq-section .tws-bss, .tws-faq-section .tws-promo, .tws-faq-section .tws-nlad,
1735.related-articles .tws-bss, .related-articles .tws-promo, .related-articles .tws-nlad { display: none !important; }
1736
1737.tws-product-card {
1738  display: flex;
1739  flex-direction: column;
1740  border: 1px solid #dddddd;
1741  border-top: 4px solid rgb(var(--color-primary));
1742  background: #ffffff;
1743}
1744
1745/* Square image area, product sits on white with a little breathing room */
1746.tws-product-image {
1747  width: 100%;
1748  aspect-ratio: 1 / 1;
1749  display: flex;
1750  align-items: center;
1751  justify-content: center;
1752  background: #ffffff;
1753  padding: 18px;
1754  box-sizing: border-box;
1755  border-bottom: 1px solid #eeeeee;
1756}
1757.tws-product-image img {
1758  width: 100%;
1759  height: 100%;
1760  object-fit: contain;
1761  display: block;
1762  margin: 0 !important;
1763  max-height: 100% !important;
1764}
1765
1766.tws-product-body {
1767  padding: 18px 20px 22px;
1768  display: flex;
1769  flex-direction: column;
1770  flex: 1;
1771}
1772.tws-product-title {
1773  font-size: 19px;
1774  font-weight: 700 !important;
1775  color: rgb(var(--color-primary));
1776  margin: 0 0 6px !important;
1777  line-height: 1.3;
1778}
1779.tws-product-meta {
1780  font-size: 14px;
1781  margin: 0 0 12px !important;
1782  line-height: 1.45;
1783}
1784.tws-product-price { font-weight: 700; color: #1a1a1a; }
1785.tws-product-link {
1786  color: rgb(var(--color-primary));
1787  font-weight: 700;
1788  text-decoration: none;
1789}
1790.tws-product-link:hover { color: rgb(var(--color-secondary)); text-decoration: underline; }
1791.tws-product-desc {
1792  font-size: 16px;
1793  color: #333333;
1794  line-height: 1.6;
1795  margin: 0 !important;
1796}
1797
1798/* One column on mobile, whatever the desktop column count */
1799@media (max-width: 767px) {
1800  .tws-product-grid,
1801  .tws-product-grid.tws-product-grid-3,
1802  .tws-product-grid.tws-product-grid-4 {
1803    grid-template-columns: 1fr;
1804    gap: 20px;
1805  }
1806}
1807/* END - tws-product-grid */
1808
1809/* START - TWS full-width call-to-action (cover image + text + button) */
1810/* Full-width promo: cover image one side, heading, copy and button the other.
1811   The image is shown whole, never cropped, and the panel fills any space around it.
1812   Brand primary = button, secondary = panel. Class-based, inline styles stripped. */
1813.tws-cta { display: flex; flex-direction: row; align-items: stretch; width: 100%; margin: 0 0 34px; background: rgb(var(--color-secondary)); }
1814.tws-cta .tws-cta-media { flex: 0 0 50%; display: flex; align-items: center; justify-content: center; padding: 26px; box-sizing: border-box; }
1815.tws-cta .tws-cta-media img { display: block; width: auto; height: auto; max-width: 100%; max-height: 460px; }
1816.tws-cta .tws-cta-body { flex: 0 0 50%; display: flex; flex-direction: column; justify-content: center; padding: 40px 46px; box-sizing: border-box; color: #ffffff; }
1817.tws-cta .tws-cta-heading { font-family: 'Georgia', 'Times New Roman', serif; font-size: 30px; line-height: 1.15; font-weight: 700; margin: 0 0 18px; color: #ffffff; }
1818.tws-cta .tws-cta-body p { margin: 0 0 16px; color: #ffffff; }
1819.tws-cta .tws-cta-btn { align-self: flex-start; display: inline-block; margin-top: 10px; padding: 14px 34px; background: rgb(var(--color-primary)); color: #ffffff; font-weight: bold; font-size: 0.95em; letter-spacing: 0.05em; text-transform: uppercase; text-decoration: none; transition: background 0.2s ease; }
1820.tws-cta .tws-cta-btn:hover { background: #ffffff; color: rgb(var(--color-primary)); text-decoration: none; }
1821
1822@media (max-width: 767px) {
1823    .tws-cta { flex-direction: column; }
1824    .tws-cta .tws-cta-media, .tws-cta .tws-cta-body { flex: none; width: 100%; }
1825    .tws-cta .tws-cta-media { padding: 22px 22px 0; }
1826    .tws-cta .tws-cta-media img { max-height: none; }
1827    .tws-cta .tws-cta-body { padding: 26px 24px 30px; }
1828    .tws-cta .tws-cta-heading { font-size: 25px; }
1829}
1830/* END - TWS full-width call-to-action */
1831
1832
1833/* ============================================================
1834   tws-panel  (v2_6)
1835   Tinted feature panel with a solid header bar, for a magazine
1836   "viewpoint" or sidebar box. Bar = brand PRIMARY with white text,
1837   body = a soft tint of that same primary.
1838   Markup: div.tws-panel holding p.tws-panel-name (the reversed-out
1839   name band) then div.tws-panel-body, which opens with an
1840   h3.tws-panel-title and an optional p.tws-panel-standfirst.
1841   Class-based, inline styles stripped from post content on save.
1842   ============================================================ */
1843/* Inner text rules carry an #app prefix to out-rank the theme's own
1844   "#app h3 { font-family: 'Open Sans' !important }": that selector has an ID, so a
1845   classes-only rule loses even with !important. #app wraps content on every brand. */
1846.tws-panel { background: rgba(var(--color-primary), 0.08); margin: 40px 0; }
1847#app .tws-panel .tws-panel-name { background: rgb(var(--color-primary)); color: #ffffff !important; margin: 0 !important; padding: 9px 26px !important; font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; font-size: 14px !important; font-weight: 700 !important; letter-spacing: 0.05em; text-transform: uppercase; line-height: 1.3 !important; }
1848.tws-panel-body { padding: 22px 26px 24px; }
1849#app .tws-panel .tws-panel-title { margin: 0 0 6px !important; padding: 0 !important; font-family: 'Georgia', 'Times New Roman', serif !important; font-size: 26px !important; font-weight: 600 !important; line-height: 1.2 !important; color: rgb(var(--color-primary)); }
1850#app .tws-panel .tws-panel-standfirst { margin: 0 0 16px !important; font-size: 1.1em !important; font-weight: 600 !important; line-height: 1.4; }
1851.tws-panel-body > *:last-child { margin-bottom: 0 !important; }
1852
1853@media (max-width: 600px) {
1854  #app .tws-panel .tws-panel-name { font-size: 13px !important; padding: 8px 20px !important; }
1855  #app .tws-panel .tws-panel-title { font-size: 21px !important; }
1856  .tws-panel-body { padding: 18px 20px 20px; }
1857}
1858/* END - tws-panel */
1859
1860
1861/* ============================================================
1862   tws-panel-media  (v2_16)
1863   A cut-out product picture on a tws-panel. The picture sits to
1864   the right of the copy and breaks out above and below the box,
1865   so a prize or product promo reads like a magazine page rather
1866   than a plain aside. A modifier on .tws-panel, so every existing
1867   panel is untouched.
1868   Markup: the usual .tws-panel > p.tws-panel-name + div.tws-panel-body,
1869   with a div.tws-panel-image holding ONE transparent PNG added
1870   after the body. Class-based, because inline styles are stripped
1871   from post content on save.
1872   The picture box is pinned top and bottom with a fixed overhang
1873   and takes its width from aspect-ratio, so the break-out is the
1874   same depth whatever the copy does. max-width stops a tall panel
1875   pushing the picture into the text; where that cap bites, the
1876   picture simply sits inside the box instead, which is what
1877   happens between 768px and about 900px.
1878   ============================================================ */
1879.tws-panel.tws-panel-media { position: relative; margin: 80px 0; }
1880.tws-panel-media .tws-panel-body { padding-right: 46%; }
1881.tws-panel-media .tws-panel-image { position: absolute; right: 14px; top: -46px; bottom: -46px; aspect-ratio: 1000 / 1117; max-width: 44%; pointer-events: none; }
1882.tws-panel-media .tws-panel-image img { display: block; width: 100%; height: 100%; margin: 0; object-fit: contain; object-position: center; }
1883
1884/* Tablet: a narrower picture so the copy keeps a workable measure. */
1885@media (max-width: 1024px) {
1886  .tws-panel.tws-panel-media { margin: 56px 0; }
1887  .tws-panel-media .tws-panel-body { padding-right: 42%; }
1888  .tws-panel-media .tws-panel-image { right: 10px; top: -30px; bottom: -30px; max-width: 40%; }
1889}
1890
1891/* Mobile: side by side stops working, so the picture drops under
1892   the copy and breaks out of the foot of the box only. */
1893@media (max-width: 767px) {
1894  .tws-panel.tws-panel-media { margin: 40px 0 66px; }
1895  .tws-panel-media .tws-panel-body { padding-right: 26px; padding-bottom: 10px; }
1896  .tws-panel-media .tws-panel-image { position: relative; right: auto; top: auto; bottom: -30px; aspect-ratio: auto; max-width: none; height: 215px; margin: 0 20px; }
1897  .tws-panel-media .tws-panel-image img { object-position: center bottom; }
1898}
1899/* END - tws-panel-media */
1900
1901
1902/* ============================================================
1903   tws-strand-break  (v2_8)
1904   A thematic break between the self-contained strands of a
1905   round-up article, where unrelated short stories share one page
1906   (the weekly Shooting Times Junior package). Not the automatic
1907   dividers above the recipe method, FAQ and related articles -
1908   those components draw their own.
1909   It must declare its own border: the theme's Tailwind reset puts
1910   "border: 0 solid" on every element, so an unstyled hr is
1911   invisible, and it zeroes the hr margin too.
1912   Markup: hr.tws-strand-break on its own line above the strand h2.
1913   ============================================================ */
1914.tws-strand-break { border: 0; border-top: 1px solid #dddddd; height: 0; margin: 44px 0 36px !important; }
1915
1916@media (max-width: 768px) {
1917  .tws-strand-break { margin: 32px 0 26px !important; }
1918}
1919/* END - tws-strand-break */
1920
1921
1922/* ============================================================
1923   HIGHLIGHTS TILES - flat tint removed, gradient at the bottom only
1924   Added 4 August 2026. Block: blocks/five-post-cards.
1925   The block hard-codes a 50 per cent black layer over the whole
1926   photo inside the inline background shorthand, alongside the
1927   per-card image URL, so no stylesheet can replace one without
1928   losing the other. Blending that layer with "lighten" cancels it
1929   exactly: black lightened against the photo is the photo. The
1930   second value, normal, stops the photo blending with the
1931   lightgray background colour, which would lift every dark area.
1932   background-blend-mode is not part of the background shorthand,
1933   so the inline style does not reset it and no template change is
1934   needed.
1935   ============================================================ */
1936.five-post-cards .card-link div[style*="linear-gradient"] { background-blend-mode: lighten, normal; }
1937
1938/* Animated GIF cards take a different branch and get a separate black overlay */
1939.five-post-cards .card-link .absolute.inset-0.bg-black { display: none; }
1940
1941/* Tint restored as a bottom-up gradient on the caption layer. The heading is a
1942   child of that layer, so it paints above its own background with no z-index. */
1943.five-post-cards .card-link .absolute.items-end {
1944  background-image: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.60) 18%, rgba(0,0,0,0.25) 38%, rgba(0,0,0,0) 60%);
1945}
1946
1947/* Safety net for a caption landing on a bright patch */
1948.five-post-cards .card-link h3 { text-shadow: 0 1px 3px rgba(0,0,0,0.6); }
1949
1950/* Dial to taste: darker behind the text, raise 0.85 towards 0.95. Gradient
1951   reaches higher up the tile, raise the 60% stop. Hugs the base more, drop it. */
1952/* END - Highlights tiles */
1953
1954
1955/* ============================================================
1956   tws-product-grid-1  (v2_9)
1957   One card per row, laid out horizontally on desktop so a section
1958   carrying a single product fills the content width instead of
1959   leaving an empty second column. Square image left at 50 per
1960   cent, copy beside it. Stacks to the normal vertical card on
1961   mobile.
1962   ============================================================ */
1963
1964.tws-product-grid.tws-product-grid-1 { grid-template-columns: 1fr; }
1965
1966.tws-product-grid.tws-product-grid-1 .tws-product-card { flex-direction: row; align-items: stretch; }
1967
1968.tws-product-grid.tws-product-grid-1 .tws-product-image {
1969  width: 50%;
1970  max-width: none;
1971  flex: 0 0 auto;
1972  border-bottom: 0;
1973  border-right: 1px solid #eeeeee;
1974}
1975
1976.tws-product-grid.tws-product-grid-1 .tws-product-body { flex: 1 1 auto; justify-content: center; }
1977
1978@media (max-width: 767px) {
1979  .tws-product-grid.tws-product-grid-1 { grid-template-columns: 1fr; }
1980  .tws-product-grid.tws-product-grid-1 .tws-product-card { flex-direction: column; }
1981  .tws-product-grid.tws-product-grid-1 .tws-product-image {
1982    width: 100%;
1983    max-width: none;
1984    border-right: 0;
1985    border-bottom: 1px solid #eeeeee;
1986  }
1987}
1988/* END - tws-product-grid-1 */
1989
1990
1991/* ============================================================
1992   Boxed roundup refinements  (v2_10, v2_11)
1993   A product grid last inside a tws-frame stacked its own bottom
1994   margin on the frame's bottom padding, leaving a deeper gap below
1995   the cards than at the sides; that margin is removed.
1996
1997   tws-frame-number is an opt-in span for the leading label on a
1998   numbered roundup heading, the "No. 1" in "No. 1 - Shotgun: ...".
1999   Set large, in the brand's secondary serif and primary colour.
2000   Nothing changes unless the class is added by hand. The #app
2001   prefix and !important are needed to beat the theme's own
2002   "#app h2 font-family Open Sans important" rule, the same problem
2003   tws-panel-title has.
2004   ============================================================ */
2005
2006.tws-frame .tws-product-grid:last-child { margin-bottom: 0; }
2007
2008#app .tws-frame h2 .tws-frame-number,
2009.tws-frame h2 .tws-frame-number {
2010  font-family: 'EB Garamond', 'Georgia', 'Times New Roman', serif !important;
2011  font-size: 2.1em;
2012  font-weight: 700 !important;
2013  display: inline-block;
2014  line-height: 0.72;
2015  color: rgb(var(--color-primary));
2016  vertical-align: -0.04em;
2017  margin-right: 4px;
2018  white-space: nowrap;
2019}
2020/* END - Boxed roundup refinements */
2021		</style>
2022		<style id="tws-mobile-panel-styles">
2023#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation {
2024    --tws-mp-accent: rgb(var(--color-primary));
2025    --tws-mp-accent: #906C3F;}
2026
2027/* The panel additions are mobile only. Injected into the mobile wrap alone,
2028   but hidden above the breakpoint as well in case a future template renders
2029   the mobile toggle at a wider width. */
2030@media only screen and (min-width: 1024px) {
2031    li.tws-mp-item { display: none !important; }
2032}
2033
2034@media only screen and (max-width: 1023px) {
2035
2036    /* The empty row.
2037       app.css hides the link with visibility:hidden, which leaves the row in
2038       the layout at its full height plus its bottom border. This removes the
2039       list item instead. The item is already mega-hide-on-desktop, so nothing
2040       is lost above the breakpoint either. */
2041    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-social-media-links,
2042    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.social-media-links {
2043        display: none !important;
2044    }
2045
2046    /* Mega Menu pads the panel list 60px 25px. The 25px sides are what every
2047       row lines up against and are left alone. The 60px top was clearance for
2048       Mega Menu's own close button, which is no longer used, so it comes down
2049       and the whole panel starts higher.
2050
2051       Scoped to .tws-mp-built, added by the script once the rows are actually
2052       in place. If the script has not run, Mega Menu's close button is still
2053       the one on screen and it keeps the room it needs. */
2054    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation.tws-mp-built {
2055        padding-top: 16px !important;
2056    }
2057
2058    /* Mega Menu's close button, retired in favour of ours. Adjacent sibling of
2059       the list, which is how Mega Menu's own stylesheet addresses it too. */
2060    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation.tws-mp-built + button.mega-close {
2061        display: none !important;
2062    }
2063
2064    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation .tws-mp-close {
2065        /* Right edge lands on the right edge of the rows below, whatever the
2066           panel width, because the row it sits in shares their box. */
2067        display: block;
2068        margin: 0 0 6px auto;
2069        padding: 0;
2070        width: 30px;
2071        height: 30px;
2072        border: 0;
2073        background: none;
2074        color: #fff;
2075        cursor: pointer;
2076        line-height: 0;
2077    }
2078
2079    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation .tws-mp-close svg {
2080        display: block;
2081        width: 100%;
2082        height: 100%;
2083    }
2084
2085    /* Sub menu links.
2086       Mega Menu's own generated CSS colours these #666, which is its flyout
2087       setting and reads fine on the desktop panel. On the black mobile panel it
2088       is too dim against the white top-level items. Matched with !important
2089       rather than by out-specifying a two-id, four-class selector, and scoped
2090       to this breakpoint so the desktop flyouts keep Mega Menu's own colour. */
2091    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
2092        color: #fff !important;
2093    }
2094
2095    /* The header's own search button sits above the open panel, so its
2096       magnifier shows through over the menu. Hidden while the panel is open.
2097       The class is put on by script, which can tell this button apart from the
2098       burger and the close button; a selector cannot do that reliably here,
2099       because header.blade.php gives it only a responsive utility class.
2100       visibility rather than display, so nothing in the header reflows. */
2101    html.tws-mp-open .tws-mp-header-search {
2102        visibility: hidden !important;
2103        pointer-events: none !important;
2104    }
2105
2106    /* The header's search icon ships at 18px against a burger that renders
2107       32 x 19, which left it looking undersized next to it. */
2108    #header .tws-mp-header-search svg {
2109        width: 24px !important;
2110        height: 24px !important;
2111    }
2112
2113    /* An explicit colour for both mobile header icons, so the burger and the
2114       search icon always match rather than one being chased to the other.
2115       Set per site; blank on a site with a dark header, where the icons are
2116       white already and the runtime match below is the right behaviour. */
2117    #header .mega-menu-mobile-toggle .mega-toggle-animated-inner,
2118    #header .mega-menu-mobile-toggle .mega-toggle-animated-inner::before,
2119    #header .mega-menu-mobile-toggle .mega-toggle-animated-inner::after {
2120        background-color: #b6b6b6 !important;
2121    }
2122
2123    #header .tws-mp-header-search svg [stroke]:not([stroke="none"]) {
2124        stroke: #b6b6b6 !important;
2125    }
2126
2127    #header .tws-mp-header-search svg [fill]:not([fill="none"]) {
2128        fill: #b6b6b6 !important;
2129    }
2130
2131    /* The header's own search icon carries #ffffff on the SVG's own
2132       attributes. That is right on Shooting UK, whose header is #231F20, and
2133       invisible on the six with a white header - the icon is not faint there,
2134       it is simply not drawn.
2135
2136       Recoloured to match that site's burger. The burger colour is a per-site
2137       Max Mega Menu theme setting and is not the same everywhere: five sites
2138       use #ddd and Trout & Salmon uses black, so it is read at runtime rather
2139       than written down. The script only adds this class where the header is
2140       light, so Shooting UK keeps its white icon.
2141
2142       Only attributes that already carry a colour are touched, so the circle
2143       keeps fill="none" and does not fill in. */
2144    #header.tws-mp-match-search .tws-mp-header-search svg [stroke]:not([stroke="none"]) {
2145        stroke: var(--tws-mp-burger) !important;
2146    }
2147
2148    #header.tws-mp-match-search .tws-mp-header-search svg [fill]:not([fill="none"]) {
2149        fill: var(--tws-mp-burger) !important;
2150    }
2151
2152    /* Logo, when one is uploaded. Height driven, so any sensible file fits the
2153       row without being asked for at an exact size.
2154       Imagify is set to rewrap images in <picture> and moves the class up onto
2155       the wrapper, leaving the img bare, so both are sized here. Without this
2156       the logo would look right until the day a WebP version was generated. */
2157    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation .tws-mp-logo,
2158    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation picture:has(> .tws-mp-logo) {
2159        display: block !important;
2160        height: 44px !important;
2161        width: auto !important;
2162        max-width: 220px !important;
2163        margin: 0 auto !important;
2164        object-fit: contain !important;
2165    }
2166
2167    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation picture:has(> .tws-mp-logo) > img,
2168    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation picture.tws-mp-logo > img {
2169        height: 100% !important;
2170        width: auto !important;
2171        max-width: 100% !important;
2172        object-fit: contain !important;
2173    }
2174
2175    /* Our own rows carry none of Mega Menu's item chrome.
2176       Deliberately no padding, margin or border shorthand here: the three row
2177       rules below set their own, and a shorthand at this specificity would
2178       overrule them. */
2179    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.tws-mp-item {
2180        display: block !important;
2181        width: 100% !important;
2182        border: 0 none !important;
2183        background: none !important;
2184        list-style: none !important;
2185    }
2186
2187    #mega-menu-primary_navigation .tws-mp-item .screen-reader-text {
2188        position: absolute; width: 1px; height: 1px; overflow: hidden;
2189        clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
2190    }
2191
2192    /* Title.
2193       Carries the same two-id prefix as the reset above. Without it the reset
2194       wins on specificity even though both are !important, and the padding
2195       silently never lands. */
2196    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.tws-mp-item-head {
2197        /* Right inset clears Mega Menu's close button, which sits over the
2198           top right corner of the panel rather than in the flow. */
2199        margin: 0 !important;
2200        /* No horizontal padding, so the title and any logo centre on the panel
2201           rather than sitting off to the left. No top padding either: the close
2202           button is the first thing in this row and the list's own 16px is the
2203           only gap wanted above it.
2204
2205           The 22px underneath is the gap between the logo and the search box.
2206           The search row adds 2px of its own, so the visible gap is 24px. */
2207        padding: 0 0 22px !important;
2208        text-align: center;
2209    }
2210
2211    #mega-menu-primary_navigation .tws-mp-wordmark {
2212        display: block;
2213        color: #fff;
2214        font-size: 15px;
2215        font-weight: 800;
2216        line-height: 1.2;
2217        letter-spacing: .02em;
2218        text-transform: uppercase;
2219    }
2220
2221    /* A strapline is a quieter second line. Anything that is part of the
2222       magazine's name belongs in the title above, at the same size. */
2223    #mega-menu-primary_navigation .tws-mp-strapline {
2224        display: block;
2225        margin-top: 4px;
2226        color: rgba(255, 255, 255, .62);
2227        font-size: 9.5px;
2228        font-weight: 400;
2229        letter-spacing: .15em;
2230        text-transform: uppercase;
2231    }
2232
2233    /* Search.
2234       Sticky so it stays reachable once the menu is scrolled. If the panel
2235       turns out to scroll the page rather than itself, this degrades to a
2236       normal block at the top, which is still an improvement on no search. */
2237    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.tws-mp-item-search {
2238        margin: 0 !important;
2239        position: sticky !important;
2240        top: 0;
2241        z-index: 5;
2242        background: inherit !important;
2243        /* No horizontal padding. This row is a sibling of the menu rows, so
2244           zero here makes the search box exactly as wide as the rows above it
2245           and their dividing lines, whatever inset Mega Menu is applying to
2246           the list itself. */
2247        padding: 2px 0 16px !important;
2248    }
2249
2250    #mega-menu-primary_navigation .tws-mp-search {
2251        display: flex;
2252        align-items: center;
2253        gap: 9px;
2254        margin: 0;
2255        padding: 9px 12px;
2256        border-radius: 4px;
2257        background: #fff;
2258    }
2259
2260    #mega-menu-primary_navigation .tws-mp-mag {
2261        flex: 0 0 auto;
2262        width: 17px;
2263        height: 17px;
2264        color: #555;
2265    }
2266
2267    #mega-menu-primary_navigation .tws-mp-search input[type="search"] {
2268        flex: 1 1 auto;
2269        min-width: 0;
2270        margin: 0;
2271        padding: 0;
2272        border: 0;
2273        background: none;
2274        box-shadow: none;
2275        color: #111;
2276        font-size: 15px;
2277        font-family: inherit;
2278        -webkit-appearance: none;
2279        appearance: none;
2280    }
2281
2282    #mega-menu-primary_navigation .tws-mp-search input[type="search"]:focus {
2283        outline: none;
2284    }
2285
2286    #mega-menu-primary_navigation .tws-mp-go {
2287        flex: 0 0 auto;
2288        padding: 6px 11px;
2289        border: 0;
2290        border-radius: 3px;
2291        background: var(--tws-mp-accent);
2292        color: #fff;
2293        font-size: 12px;
2294        font-weight: 700;
2295        letter-spacing: .03em;
2296        cursor: pointer;
2297    }
2298
2299    /* Footer */
2300    #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.tws-mp-item-foot {
2301        /* Mega Menu puts margin: 0 10px 0 0 on every item, which would indent
2302           this row against the ones above it. Stated in full rather than as
2303           margin-top alone. */
2304        margin: 26px 0 0 !important;
2305        /* Zero horizontal padding for the same reason as the search row: the
2306           subscribe button lines up with the menu rows above it. */
2307        padding: 22px 0 30px !important;
2308        /* No rule across the top. The last menu item already draws a full width
2309           line, so a second, fainter one directly under it read as an artefact
2310           rather than as a divider. The 26px margin above does the separating. */
2311    }
2312
2313    #mega-menu-primary_navigation .tws-mp-subscribe {
2314        display: block;
2315        padding: 14px 12px;
2316        border-radius: 3px;
2317        background: var(--tws-mp-accent);
2318        color: #fff !important;
2319        font-size: 15px;
2320        font-weight: 700;
2321        letter-spacing: .015em;
2322        line-height: 1.3;
2323        text-align: center;
2324        text-decoration: none;
2325    }
2326
2327    #mega-menu-primary_navigation .tws-mp-subscribe small {
2328        display: block;
2329        margin-top: 3px;
2330        opacity: .9;
2331        font-size: 11.5px;
2332        font-weight: 400;
2333        letter-spacing: .05em;
2334        text-transform: uppercase;
2335    }
2336
2337    #mega-menu-primary_navigation .tws-mp-follow {
2338        margin: 26px 0 14px;
2339        color: rgba(255, 255, 255, .56);
2340        font-size: 10.5px;
2341        letter-spacing: .14em;
2342        text-transform: uppercase;
2343    }
2344
2345    #mega-menu-primary_navigation .tws-mp-socials {
2346        display: flex;
2347        align-items: center;
2348        /* The "Follow us" label above is centred by the panel's own
2349           text-align, which a flex container ignores, so the row of icons has
2350           to be centred on its own axis. */
2351        justify-content: center;
2352        gap: 26px;
2353    }
2354
2355    /* Plain marks on the black, no circles. The 44px tap target is kept by
2356       padding, so the icon can stay 25px without being hard to hit. */
2357    #mega-menu-primary_navigation a.tws-mp-social {
2358        display: flex;
2359        align-items: center;
2360        justify-content: center;
2361        width: 25px;
2362        height: 25px;
2363        margin: -9px -9px;
2364        padding: 9px;
2365        border: 0 !important;
2366        box-sizing: content-box;
2367        line-height: 0;
2368    }
2369
2370    #mega-menu-primary_navigation a.tws-mp-social svg {
2371        width: 25px;
2372        height: 25px;
2373        fill: #fff;
2374        display: block;
2375    }
2376}
2377</style>
2378    <style id="tws-card-line-clamp">
2379#app .latest-posts-block li > div > a > h3,
2380#app .latest-posts-block li > div > a > p {
2381    display: -webkit-box;
2382    -webkit-box-orient: vertical;
2383    -webkit-line-clamp: 3;
2384    overflow: hidden;
2385}
2386#app .latest-posts-block li > div > a > h3 {
2387    line-height: 1.2;
2388}
2389#app .latest-posts-block li > div > a > p {
2390    padding-top: 0;
2391    padding-bottom: 0;
2392    margin: 6px 0;
2393}
2394@media (max-width: 1023px) {
2395    #app .hero-banner-wrapper #hero-banner .carousel-overlay .container >
2395 h2 + p {
2396        display: -webkit-box;
2397        -webkit-box-orient: vertical;
2398        -webkit-line-clamp: 3;
2399        overflow: hidden;
2400        line-height: 1.2em !important;
2401        max-height: 3.6em !important;
2402        padding-bottom: 0 !important;
2403        margin-bottom: 30px;
2404    }
2405}
2406#app .latest-posts-block.tws-lc-measure li > div > a > h3,
2407#app .latest-posts-block.tws-lc-measure li > div > a > p {
2408    display: block !important;
2409    -webkit-line-clamp: none !important;
2410    overflow: visible !important;
2411    max-height: none !important;
2412}
2413</style>
2414    <style type="text/css">@charset "UTF-8";/** THIS FILE IS AUTOMATICALLY GENERATED - DO NOT MAKE MANUAL EDITS! **//** Custom CSS should be added to Mega Menu > Menu Themes > Custom Styling **/.mega-menu-last-modified-1790767034 {content: "Wednesday 30th September 2026 11:17:14 UTC";}#mega-menu-wrap-primary_navigation, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-row, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-column, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation span.mega-menu-badge, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation + button.mega-close {transition: none;border-radius: 0;box-shadow: none;background: none;border: 0;bottom: auto;box-sizing: border-box;clip: auto;color: black;display: block;float: none;font-family: inherit;font-size: 14px;height: auto;left: auto;line-height: 1.7;list-style-type: none;margin: 0;min-height: auto;max-height: none;min-width: auto;max-width: none;opacity: 1;outline: none;overflow: visible;padding: 0;position: relative;pointer-events: auto;right: auto;text-align: left;text-decoration: none;text-indent: 0;text-transform: none;transform: none;top: auto;vertical-align: baseline;visibility: inherit;width: auto;word-wrap: break-word;white-space: normal;}#mega-menu-wrap-primary_navigation:before, #mega-menu-wrap-primary_navigation:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation ul.mega-sub-menu:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation ul.mega-sub-menu:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-row:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-row:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-column:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-column:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation span.mega-menu-badge:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation span.mega-menu-badge:after, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation + button.mega-close:before, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation + button.mega-close:after {display: none;}#mega-menu-wrap-primary_navigation {border-radius: 0;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation {background: rgba(255, 255, 255, 0);}}#mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-menu-toggle:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-toggle-block:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-toggle-block a:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-toggle-block .mega-search input[type=text]:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-toggle-block button.mega-toggle-animated:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation a:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation span:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation input:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation li.mega-menu-item a.mega-menu-link:focus, #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation form.mega-search-open:has(input[type=text]:focus), #mega-menu-wrap-primary_navigation.mega-keyboard-navigation #mega-menu-primary_navigation + button.mega-close:focus {outline-style: solid;outline-width: 3px;outline-color: #109cde;outline-offset: -3px;}#mega-menu-wrap-primary_navigation.mega-keyboard-navigation .mega-toggle-block button.mega-toggle-animated:focus {outline-offset: 2px;}#mega-menu-wrap-primary_navigation.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus {background: rgba(255, 255, 255, 0);color: black;font-weight: bold;text-decoration: none;border-color: #fff;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus {color: #ffffff;background: #b38750;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation {text-align: center;padding: 0px 0px 5px 0px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link {cursor: pointer;display: inline;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link .mega-description-group {vertical-align: middle;display: inline-block;transition: none;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link .mega-description-group .mega-menu-title, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link .mega-description-group .mega-menu-description {transition: none;line-height: 1.5;display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link .mega-description-group .mega-menu-description {font-style: italic;font-size: 0.8em;text-transform: none;font-weight: normal;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {display: flex;align-items: center;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link:before {flex: 0 0 auto;align-self: flex-start;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-tabbed.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-icon-top > a.mega-menu-link {display: table-cell;vertical-align: middle;line-height: initial;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-icon-top > a.mega-menu-link:before {display: block;margin: 0 0 6px 0;text-align: center;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-icon-top > a.mega-menu-link > span.mega-title-below {display: inline-block;transition: none;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-icon-top > a.mega-menu-link {display: block;line-height: 40px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-icon-top > a.mega-menu-link:before {display: inline-block;margin: 0 6px 0 0;text-align: left;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-icon-right > a.mega-menu-link:before {float: right;margin: 0 0 0 6px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-animating > ul.mega-sub-menu {pointer-events: none;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-disable-link > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu li.mega-disable-link > a.mega-menu-link {cursor: inherit;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children.mega-disable-link > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > li.mega-menu-item-has-children.mega-disable-link > a.mega-menu-link {cursor: pointer;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation p {margin-bottom: 10px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation input, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation img {max-width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item > ul.mega-sub-menu {display: block;visibility: hidden;opacity: 1;pointer-events: auto;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item > ul.mega-sub-menu {display: none;visibility: visible;opacity: 1;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu {display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu.mega-menu-item.mega-toggle-on li.mega-hide-sub-menu-on-mobile > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-hide-sub-menu-on-mobile > ul.mega-sub-menu {display: none;}}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade"] li.mega-menu-item > ul.mega-sub-menu {opacity: 0;transition: opacity 200ms ease-in, visibility 200ms ease-in;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade"].mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade"].mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade"] li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade"] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {opacity: 1;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"] li.mega-menu-item.mega-menu-megamenu > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"] li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu {opacity: 0;transform: translate(0, 10px);transition: opacity 200ms ease-in, transform 200ms ease-in, visibility 200ms ease-in;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"].mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"].mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"] li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="fade_up"] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {opacity: 1;transform: translate(0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"] li.mega-menu-item.mega-menu-megamenu > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"] li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu {transform: translate(0, 10px);transition: transform 200ms ease-in, visibility 200ms ease-in;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"].mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"].mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"] li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect="slide_up"] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu {transform: translate(0, 0);}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children > ul.mega-sub-menu {display: none;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children.mega-toggle-on > ul.mega-sub-menu {display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu {visibility: visible;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {visibility: inherit;opacity: 1;display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-1-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-2-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-3-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-4-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-5-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 20%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-6-columns > ul.mega-sub-menu > li.mega-menu-item {float: left;width: 16.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item a[class^="dashicons"]:before {font-family: dashicons;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item a.mega-menu-link:before {display: inline-block;font: inherit;font-family: dashicons;position: static;margin: 0 6px 0 0px;vertical-align: top;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;color: inherit;background: transparent;height: auto;width: auto;top: auto;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-hide-text a.mega-menu-link:before {margin: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-hide-text li.mega-menu-item a.mega-menu-link:before {margin: 0 6px 0 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-align-bottom-left.mega-toggle-on > a.mega-menu-link {border-radius: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-align-bottom-right > ul.mega-sub-menu {right: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-align-bottom-right.m
2414ega-toggle-on > a.mega-menu-link {border-radius: 0;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-menu-item {position: static;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item {margin: 0 30px 0 0;display: inline-block;height: auto;vertical-align: middle;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-item-align-right {float: right;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-item-align-right {margin: 0 0 0 30px;}}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-item-align-float-left {float: left;}}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link:focus {background: rgba(255, 255, 255, 0);color: black;font-weight: bold;text-decoration: none;border-color: #fff;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {background: rgba(255, 255, 255, 0);color: black;font-weight: bold;text-decoration: none;border-color: #fff;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {color: #ffffff;background: #b38750;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {background: rgba(255, 255, 255, 0);color: black;font-weight: bold;text-decoration: none;border-color: #fff;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {color: #ffffff;background: #b38750;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link {line-height: 35px;height: 35px;padding: 0px 0px 0px 0px;vertical-align: baseline;width: auto;display: block;color: black;text-transform: none;text-decoration: none;text-align: left;background: rgba(0, 0, 0, 0);border: 0;border-radius: 0;font-family: inherit;font-size: 16px;font-weight: normal;outline: none;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-multi-line > a.mega-menu-link {line-height: inherit;display: table-cell;vertical-align: middle;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-multi-line > a.mega-menu-link br {display: none;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item {display: list-item;margin: 0;clear: both;border: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item.mega-item-align-right {float: none;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link {border-radius: 0;border: 0;margin: 0;line-height: 40px;height: 40px;padding: 0 10px;background: transparent;text-align: left;color: #ffffff;font-size: 14px;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row {width: 100%;float: left;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column {float: left;min-height: 1px;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-1 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-2 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-2 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-3 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-3 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-3 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-4 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-4 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-4 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-4 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-5 {width: 20%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-5 {width: 40%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-5 {width: 60%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-5 {width: 80%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-5 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-6 {width: 16.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-6 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-6 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-6 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-6 {width: 83.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-6 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-7 {width: 14.2857142857%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-7 {width: 28.5714285714%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-7 {width: 42.8571428571%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-7 {width: 57.1428571429%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu >
2414 li.mega-menu-columns-5-of-7 {width: 71.4285714286%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-7 {width: 85.7142857143%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-7 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-8 {width: 12.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-8 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-8 {width: 37.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-8 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-8 {width: 62.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-8 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-8 {width: 87.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-8-of-8 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-9 {width: 11.1111111111%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-9 {width: 22.2222222222%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-9 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-9 {width: 44.4444444444%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-9 {width: 55.5555555556%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-9 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-9 {width: 77.7777777778%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-8-of-9 {width: 88.8888888889%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-9-of-9 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-10 {width: 10%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-10 {width: 20%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-10 {width: 30%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-10 {width: 40%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-10 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-10 {width: 60%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-10 {width: 70%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-8-of-10 {width: 80%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-9-of-10 {width: 90%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-10-of-10 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-11 {width: 9.0909090909%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-11 {width: 18.1818181818%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-11 {width: 27.2727272727%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-11 {width: 36.3636363636%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-11 {width: 45.4545454545%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-11 {width: 54.5454545455%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-11 {width: 63.6363636364%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-8-of-11 {width: 72.7272727273%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-9-of-11 {width: 81.8181818182%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-10-of-11 {width: 90.9090909091%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-11-of-11 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-1-of-12 {width: 8.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-2-of-12 {width: 16.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-12 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-4-of-12 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-5-of-12 {width: 41.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-6-of-12 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-7-of-12 {width: 58.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-8-of-12 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-9-of-12 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-10-of-12 {width: 83.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-11-of-12 {width: 91.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-12-of-12 {width: 100%;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-column {width: 100%;clear: both;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {padding: 15px 15px 15px 15px;width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu {z-index: 9998;border-radius: 0;background: white;border: 0;padding: 0px 0px 0px 0px;position: absolute;width: 100%;max-width: none;left: 0;padding-left: 10%;padding-right: 10%;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu {float: left;position: static;width: 100%;}}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-1 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-2 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-2 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-3 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-3 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-3 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-4 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-4 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-4 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-4 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-5 {width: 20%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-5 {width: 40%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-5 {width: 60%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-5 {width: 80%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-5 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-6 {width: 16.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-6 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-6 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-6 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-6 {width: 83.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-6 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-7 {width: 14.2857142857%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-7 {width: 28.5714285714%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-7 {width: 42.8571428571%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-7 {width: 57.1428571429%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-7 {width: 71.428571428
24146%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-7 {width: 85.7142857143%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-7 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-8 {width: 12.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-8 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-8 {width: 37.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-8 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-8 {width: 62.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-8 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-8 {width: 87.5%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-8-of-8 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-9 {width: 11.1111111111%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-9 {width: 22.2222222222%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-9 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-9 {width: 44.4444444444%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-9 {width: 55.5555555556%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-9 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-9 {width: 77.7777777778%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-8-of-9 {width: 88.8888888889%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-9-of-9 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-10 {width: 10%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-10 {width: 20%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-10 {width: 30%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-10 {width: 40%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-10 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-10 {width: 60%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-10 {width: 70%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-8-of-10 {width: 80%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-9-of-10 {width: 90%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-10-of-10 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-11 {width: 9.0909090909%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-11 {width: 18.1818181818%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-11 {width: 27.2727272727%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-11 {width: 36.3636363636%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-11 {width: 45.4545454545%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-11 {width: 54.5454545455%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-11 {width: 63.6363636364%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-8-of-11 {width: 72.7272727273%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-9-of-11 {width: 81.8181818182%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-10-of-11 {width: 90.9090909091%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-11-of-11 {width: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-1-of-12 {width: 8.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-2-of-12 {width: 16.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-3-of-12 {width: 25%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-4-of-12 {width: 33.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-5-of-12 {width: 41.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-6-of-12 {width: 50%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-7-of-12 {width: 58.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-8-of-12 {width: 66.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-9-of-12 {width: 75%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-10-of-12 {width: 83.3333333333%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-11-of-12 {width: 91.6666666667%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-columns-12-of-12 {width: 100%;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu .mega-description-group .mega-menu-description {margin: 5px 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item ul.mega-sub-menu {clear: both;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu {margin-left: 10px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu ul.mega-sub-menu ul.mega-sub-menu {margin-left: 10px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {color: black;font-family: inherit;font-size: 14px;display: block;float: left;clear: none;padding: 15px 15px 15px 15px;vertical-align: top;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item.mega-menu-clear, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-clear {clear: left;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title {color: black;font-family: inherit;font-size: 16px;text-transform: uppercase;text-decoration: none;font-weight: bold;text-align: left;margin: 0px 0px 0px 0px;padding: 0px 0px 5px 0px;vertical-align: top;display: block;visibility: inherit;border: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title:hover {border-color: rgba(0, 0, 0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {color: black;/* Mega Menu > Menu Themes > Mega Menus > Second Level Menu Items */font-family: inherit;font-size: 14px;text-transform: none;text-decoration: none;font-weight: normal;text-align: left;margin: 0px 0px 0px 0px;padding: 0px 0px 0px 0px;vertical-align: top;display: block;border: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover {border-color: rgba(0, 0, 0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus {color: black;/* Mega Menu > Menu Themes > Mega Menus >
2414 Second Level Menu Items (Hover) */font-weight: bold;text-decoration: none;background: rgba(0, 0, 0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover > span.mega-title-below, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus > span.mega-title-below, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover > span.mega-title-below, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus > span.mega-title-below {text-decoration: none;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link {color: black;/* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items */font-family: inherit;font-size: 14px;text-transform: none;text-decoration: none;font-weight: normal;text-align: left;margin: 0px 0px 0px 0px;padding: 0px 0px 0px 0px;vertical-align: top;display: block;border: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:hover {border-color: rgba(0, 0, 0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon > a.mega-menu-link {display: flex;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:focus, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link:focus {color: black;/* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items (Hover) */font-weight: normal;text-decoration: none;background: rgba(0, 0, 0, 0);}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu {border: 0;padding: 10px;border-radius: 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item {width: 100%;clear: both;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {color: black;font-family: inherit;font-size: 14px;text-transform: none;text-decoration: none;font-weight: normal;margin: 0;border: 0;padding: 0px 0px 0px 0px;vertical-align: top;display: block;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu.mega-no-headers > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:focus {color: black;font-weight: normal;text-decoration: none;background: rgba(0, 0, 0, 0);}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu {z-index: 9998;position: absolute;width: 250px;max-width: none;padding: 0px 0px 0px 0px;border: 0;background: #f1f1f1;border-radius: 0;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu {float: left;position: static;width: 100%;padding: 0;border: 0;border-radius: 0;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item {clear: both;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {display: block;background: white;color: #666;font-family: inherit;font-size: 14px;font-weight: normal;padding: 0px 10px 0px 10px;line-height: 35px;text-decoration: none;text-transform: none;vertical-align: baseline;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:first-child > a.mega-menu-link {border-top-left-radius: 0px;border-top-right-radius: 0px;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:first-child > a.mega-menu-link {border-top-left-radius: 0;border-top-right-radius: 0;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child > a.mega-menu-link {border-bottom-right-radius: 0px;border-bottom-left-radius: 0px;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child > a.mega-menu-link {border-bottom-right-radius: 0;border-bottom-left-radius: 0;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {background: #b38750;font-weight: normal;text-decoration: none;color: white;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu {position: absolute;
2414left: 100%;top: 0;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link {padding-left: 20px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu ul.mega-sub-menu a.mega-menu-link {padding-left: 30px;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {display: inline-block;width: auto;background: transparent;position: relative;pointer-events: auto;left: auto;min-width: auto;font-size: inherit;padding: 0;margin: 0 0 0 6px;height: auto;line-height: inherit;color: inherit;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after {content: "";font-family: dashicons;font-weight: normal;display: inline-block;margin: 0;vertical-align: top;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;transform: rotate(0);color: inherit;position: relative;background: transparent;height: auto;width: auto;right: auto;line-height: inherit;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {float: right;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children.mega-collapse-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {content: "";}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {float: right;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {content: "";}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children.mega-hide-sub-menu-on-mobile > a.mega-menu-link > span.mega-indicator {display: none;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-megamenu:not(.mega-menu-tabbed) li.mega-menu-item-has-children:not(.mega-collapse-children) > a.mega-menu-link > span.mega-indicator, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children.mega-hide-arrow > a.mega-menu-link > span.mega-indicator {display: none;}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout li.mega-menu-item a.mega-menu-link > span.mega-indicator:after {content: "";}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link {text-align: right;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link > span.mega-indicator {float: left;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link > span.mega-indicator:after {content: "";margin: 0 6px 0 0;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link:before {float: right;margin: 0 0 0 6px;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-flyout.mega-align-bottom-right ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu {left: -100%;top: 0;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li[class^="mega-lang-item"] > a.mega-menu-link > img {display: inline;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link > img.wpml-ls-flag, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation a.mega-menu-link > img.iclflag {display: inline;margin-right: 8px;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-hide-on-mobile, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-hide-on-mobile, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-hide-on-mobile {display: none;}}@media only screen and (min-width: 1024px) {#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-hide-on-desktop, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-hide-on-desktop, #mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-hide-on-desktop {display: none;}}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation:after {content: "";display: table;clear: both;}}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation + button.mega-close {visibility: hidden;transition: left 200ms ease-in-out, right 200ms ease-in-out, visibility 200ms ease-in-out;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect-mobile^="slide_left"] + button.mega-close {right: 0;left: 100%;}#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation[data-effect-mobile^="slide_right"] + button.mega-close {right: 100%;left: 0;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation:has(.mega-menu-open) #mega-menu-primary_navigation[data-effect-mobile^="slide_"] + button.mega-close {display: flex;position: fixed;top: 0;z-index: 99999999999;cursor: pointer;visibility: visible;}#mega-menu-wrap-primary_navigation:has(.mega-menu-open) #mega-menu-primary_navigation[data-effect-mobile^="slide_"] + button.mega-close:before {display: flex;content: "";font-family: dashicons;font-weight: normal;color: #fff;align-items: center;justify-content: center;width: 40px;height: 40px;font-size: 16px;}#mega-menu-wrap-primary_navigation:has(.mega-menu-open) #mega-menu-primary_navigation[data-effect-mobile^="slide_left"] + button.mega-close {right: 300px;left: auto;}#mega-menu-wrap-primary_navigation:has(.mega-menu-open) #mega-menu-primary_navigation[data-effect-mobile^="slide_right"] + button.mega-close {left: 300px;right: auto;}}#mega-menu-wrap-primary_navigation .mega-menu-toggle {display: none;z-index: 1;
2414cursor: pointer;background: rgba(255, 255, 255, 0);border-radius: 0;line-height: 40px;height: 40px;text-align: left;user-select: none;-webkit-tap-highlight-color: transparent;outline: none;white-space: nowrap;}#mega-menu-wrap-primary_navigation .mega-menu-toggle img {max-width: 100%;padding: 0;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation .mega-menu-toggle {display: -webkit-box;display: -ms-flexbox;display: -webkit-flex;display: flex;}}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-left, #mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-center, #mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-right {display: -webkit-box;display: -ms-flexbox;display: -webkit-flex;display: flex;-ms-flex-preferred-size: 33.33%;-webkit-flex-basis: 33.33%;flex-basis: 33.33%;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-left {-webkit-box-flex: 1;-ms-flex: 1;-webkit-flex: 1;flex: 1;-webkit-box-pack: start;-ms-flex-pack: start;-webkit-justify-content: flex-start;justify-content: flex-start;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-left .mega-toggle-block {margin-left: 6px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-left .mega-toggle-block:only-child {margin-right: 6px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-center {-webkit-box-pack: center;-ms-flex-pack: center;-webkit-justify-content: center;justify-content: center;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-center .mega-toggle-block {margin-left: 3px;margin-right: 3px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-right {-webkit-box-flex: 1;-ms-flex: 1;-webkit-flex: 1;flex: 1;-webkit-box-pack: end;-ms-flex-pack: end;-webkit-justify-content: flex-end;justify-content: flex-end;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block {margin-right: 6px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block:only-child {margin-left: 6px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block {display: -webkit-box;display: -ms-flexbox;display: -webkit-flex;display: flex;height: 100%;outline: 0;-webkit-align-self: center;-ms-flex-item-align: center;align-self: center;-ms-flex-negative: 0;-webkit-flex-shrink: 0;flex-shrink: 0;}@media only screen and (max-width: 1023px) {#mega-menu-wrap-primary_navigation .mega-menu-toggle {position: relative;}#mega-menu-wrap-primary_navigation .mega-menu-toggle + #mega-menu-primary_navigation {background: black;padding: 60px 25px 60px 25px;display: none;position: absolute;width: 100%;z-index: 9999999;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open + #mega-menu-primary_navigation {display: block;}#mega-menu-wrap-primary_navigation .mega-menu-toggle + #mega-menu-primary_navigation {position: fixed;display: block;width: 300px;max-width: 100%;height: 100vh;max-height: 100vh;top: 0;box-sizing: border-box;transition: left 200ms ease-in-out, right 200ms ease-in-out, visibility 200ms ease-in-out;overflow-y: auto;overflow-x: hidden;z-index: 9999999999;overscroll-behavior: contain;visibility: hidden;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open + #mega-menu-primary_navigation {visibility: visible;}#mega-menu-wrap-primary_navigation .mega-menu-toggle + #mega-menu-primary_navigation {left: -300px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open + #mega-menu-primary_navigation {left: 0;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open:after {position: fixed;width: 100%;height: 99999px;content: "";top: 0;left: 0;opacity: 0.5;background: black;cursor: pointer;z-index: 9999999998;}}html.mega-menu-primary_navigation-off-canvas-open {overflow: hidden;height: auto;}html.mega-menu-primary_navigation-off-canvas-open body {overflow: hidden;height: auto;}html.mega-menu-primary_navigation-off-canvas-open #wpadminbar {z-index: 0;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 {cursor: pointer;/*! * Hamburgers * @description Tasty CSS-animated hamburgers * @author Jonathan Suh @jonsuh * @site https://jonsuh.com/hamburgers * @link https://github.com/jonsuh/hamburgers */}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated {padding: 0;display: -webkit-box;display: -ms-flexbox;display: -webkit-flex;display: flex;cursor: pointer;transition-property: opacity, filter;transition-duration: 0.15s;transition-timing-function: linear;font: inherit;color: inherit;text-transform: none;background-color: transparent;border: 0;margin: 0;overflow: visible;transform: scale(0.8);align-self: center;outline: 0;background: none;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-box {width: 40px;height: 24px;display: inline-block;position: relative;outline: 0;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner {display: block;top: 50%;margin-top: -2px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner, #mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before, #mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {width: 40px;height: 4px;background-color: #ddd;border-radius: 4px;position: absolute;transition-property: transform;transition-duration: 0.15s;transition-timing-function: ease;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before, #mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {content: "";display: block;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before {top: -10px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {bottom: -10px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner {top: 2px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::before {top: 10px;transition-property: transform, opacity;transition-timing-function: ease;transition-duration: 0.15s;}#mega-menu-wrap-primary_navigation .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {top: 20px;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner {transform: translate3d(0, 10px, 0) rotate(45deg);}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::before {transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);opacity: 0;}#mega-menu-wrap-primary_navigation .mega-menu-toggle.mega-menu-open .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {transform: translate3d(0, -20px, 0
2414) rotate(-90deg);}/* Style changes to go into mega-menu.css */.wp-block {}</style>
2415<noscript><style id="rocket-lazyload-nojs-css">.rll-youtube-player, [data-lazy-src]{display:none !important;}</style></noscript>  <style id="wpr-lazyload-bg-container"></style><style id="wpr-lazyload-bg-exclusion"></style>
2416<noscript>
2417<style id="wpr-lazyload-bg-nostyle">.chosen-container-single .chosen-single abbr{--wpr-bg-5c4bae89-0f47-4502-8de7-0d55dbd277da: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/chosen-sprite.png');}.chosen-container-single .chosen-single div b{--wpr-bg-ccea5c9b-5dd8-4a90-a14c-48be0b88932d: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/chosen-sprite.png');}.chosen-container-single .chosen-search input[type=text]{--wpr-bg-c35db41c-d341-4a01-9bed-617bca2d4429: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/chosen-sprite.png');}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{--wpr-bg-6be6903b-65f3-4680-82b1-59d5d9a81d97: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/chosen-sprite.png');}.chosen-rtl .chosen-search input[type=text]{--wpr-bg-94c36cb3-4fe7-4c18-91c3-c61ba0413e8b: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/chosen-sprite.png');}.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-rtl .chosen-search input[type=text]{--wpr-bg-841486b9-121a-4473-b863-7fc029a7973c: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/css/[email protected]');}.ll-skin-melon .ui-datepicker .ui-datepicker-next span,.ll-skin-melon .ui-datepicker .ui-datepicker-prev span{--wpr-bg-b7a5e9a0-aa71-4ac6-9adb-39b7de056106: url('https://gundog-journal.com/app/plugins/search-filter-pro/public/assets/img/ui-icons_ffffff_256x240.png');}</style>
2418</noscript>
2419<script type="application/javascript">const rocket_pairs = [{"selector":".chosen-container-single .chosen-single abbr","style":".chosen-container-single .chosen-single abbr{--wpr-bg-5c4bae89-0f47-4502-8de7-0d55dbd277da: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png');}","hash":"5c4bae89-0f47-4502-8de7-0d55dbd277da","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png"},{"selector":".chosen-container-single .chosen-single div b","style":".chosen-container-single .chosen-single div b{--wpr-bg-ccea5c9b-5dd8-4a90-a14c-48be0b88932d: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png');}","hash":"ccea5c9b-5dd8-4a90-a14c-48be0b88932d","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png"},{"selector":".chosen-container-single .chosen-search input[type=text]","style":".chosen-container-single .chosen-search input[type=text]{--wpr-bg-c35db41c-d341-4a01-9bed-617bca2d4429: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png');}","hash":"c35db41c-d341-4a01-9bed-617bca2d4429","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png"},{"selector":".chosen-container-multi .chosen-choices li.search-choice .search-choice-close","style":".chosen-container-multi .chosen-choices li.search-choice .search-choice-close{--wpr-bg-6be6903b-65f3-4680-82b1-59d5d9a81d97: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png');}","hash":"6be6903b-65f3-4680-82b1-59d5d9a81d97","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png"},{"selector":".chosen-rtl .chosen-search input[type=text]","style":".chosen-rtl .chosen-search input[type=text]{--wpr-bg-94c36cb3-4fe7-4c18-91c3-c61ba0413e8b: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png');}","hash":"94c36cb3-4fe7-4c18-91c3-c61ba0413e8b","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/chosen-sprite.png"},{"selector":".chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-rtl .chosen-search input[type=text]","style":".chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-rtl .chosen-search input[type=text]{--wpr-bg-841486b9-121a-4473-b863-7fc029a7973c: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/[email protected]');}","hash":"841486b9-121a-4473-b863-7fc029a7973c","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/css\/[email protected]"},{"selector":".ll-skin-melon .ui-datepicker .ui-datepicker-next span,.ll-skin-melon .ui-datepicker .ui-datepicker-prev span","style":".ll-skin-melon .ui-datepicker .ui-datepicker-next span,.ll-skin-melon .ui-datepicker .ui-datepicker-prev span{--wpr-bg-b7a5e9a0-aa71-4ac6-9adb-39b7de056106: url('https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/img\/ui-icons_ffffff_256x240.png');}","hash":"b7a5e9a0-aa71-4ac6-9adb-39b7de056106","url":"https:\/\/gundog-journal.com\/app\/plugins\/search-filter-pro\/public\/assets\/img\/ui-icons_ffffff_256x240.png"}]; const rocket_excluded_pairs = [];</script>
2419<meta name="generator" content="WP Rocket 3.18.1.5" data-wpr-features="wpr_lazyload_css_bg_img wpr_defer_js wpr_lazyload_images wpr_lazyload_iframes wpr_oci wpr_image_dimensions wpr_desktop wpr_preload_links" /></head>
2420
2421  <body data-cmplz=1 class="page-template-default page page-id-197 wp-embed-responsive mega-menu-primary-navigation contact">
2422
2423      <style>
2424    :root {
2425    --color-primary: 179, 135, 80;
2426    --color-secondary: 78, 73, 77;
2427  }
2428  </style>
2429
2430        
2431    <div  id="app">
2432      <div  class="h-0 overflow-visable flex justify-center items-center sticky top-[90vh] z-[99999]">
2433        <span class="tws-ad-empty" hidden aria-hidden="true"></span><!-- Error, Advert is not available at this time due to schedule/geolocation restrictions! -->    </div>
2434
2435<div  class="min-h-screen">
2436    <div  class="mt-[198px] lg:mt-[205.99px] with-ad-and-cta">
2437    <section class="relative lg:mt-[40px] mt-[20px]">
2438  
2439
2440  <div class="container ">
2441    <div class="flex justify-center items-center">
2442          <div class="a-single a-4"><div class="ad-stack">
2443    <!-- /22987101562/GDJ.com-Billboard -->
2444    <div class="billboard-and-leaderboard-ad" id='div-gpt-ad-1737908991816-0' >
2445        
2445<script>
2446        window.addEventListener('gptScriptLoaded', function() {
2447        googletag.cmd.push(function() { 
2448        googletag.display('div-gpt-ad-1737908991816-0'); 
2449        });
2450        });
2451        </script>
2451
2452    </div>
2453    <!-- /22987101562/GDJ.com-Leaderboard -->
2454    <div class="billboard-and-leaderboard-ad" id='div-gpt-ad-1737909123474-0' >
2455        
2455<script>
2456        window.addEventListener('gptScriptLoaded', function() {
2457        googletag.cmd.push(function() { 
2458        googletag.display('div-gpt-ad-1737909123474-0'); 
2459        });
2460        });
2461        </script>
2461
2462    </div>
2463</div></div>        </div>
2464  </div>
2465
2466  
2467</section>
2468  </div>
2469
2470
2471<style>
2472    .tws-header-logo,
2473    picture:has(> .tws-header-logo) {
2474        height: 40px;
2475        width: auto;
2476        max-width: 240px;
2477        object-fit: contain;
2478        display: block;
2479    }
2480    /* Imagify may rewrap the img in a <picture> and move the class up (CLAUDE.md 5.5) */
2481    picture:has(> .tws-header-logo) > img,
2482    picture.tws-header-logo > img {
2483        height: 100% !important;
2484        width: auto !important;
2485        max-width: 100%;
2486        object-fit: contain;
2487    }
2488</style>
2489
2490
2491
2492<header id="header"
2493    class="header-group transition bg-white duration-500 fixed top-0 inset-x-0 w-full z-[9999] max-w-full"
2494    x-data="{ expanded: false }">
2495            <section class="header-cta bg-primary text-center flex text-white items-center justify-center py-[10px] px-15px">
2496            <span class="text-[12px] font-semibold"><p>★ <a href="https://shop.twsgroup.com/Subscribe/Gundog-Journal">Subscribe and save. Pay just £11.66 per issue &#8211; 16% cheaper than buying in-store at £13.95! Click here to subscribe</a> ★</p>
2497</span>
2498        </section>
2499    
2500<!-- Desktop Header -->
2501<div class="nav-header-main hidden lg:flex flex-row justify-between items-center container py-[20px] relative min-h-[80px]">
2502
2503    <!-- Logo + Tagline -->
2504    <div class="flex flex-row items-center gap-[15px] flex-shrink-0">
2505                <a href="https://gundog-journal.com/" aria-label="Home">
2506                                        <img fetchpriority="high" width="2000" height="558" class="tws-header-logo" src="/app/uploads/sites/2/2025/01/GJ-logo-BLACK-1.png" alt="" />
2507                    </a>
2508    </div>
2509
2510    <!-- Navigation Menu -->
2511    <div class="main-nav-bar flex justify-start grow px-[40px]">
2512        <div id="mega-menu-wrap-primary_navigation" class="mega-menu-wrap"><div class="mega-menu-toggle"><div class="mega-toggle-blocks-left"></div><div class="mega-toggle-blocks-center"></div><div class="mega-toggle-blocks-right"><div class='mega-toggle-block mega-menu-toggle-animated-block mega-toggle-block-0' id='mega-toggle-block-0'><button aria-label="Toggle Menu" class="mega-toggle-animated mega-toggle-animated-slider" type="button" aria-expanded="false">
2513                  <span class="mega-toggle-animated-box">
2514                    <span class="mega-toggle-animated-inner"></span>
2515                  </span>
2516                </button></div></div></div><ul id="mega-menu-primary_navigation" class="mega-menu max-mega-menu mega-menu-horizontal mega-no-js" data-event="hover_intent" data-effect="fade_up" data-effect-speed="200" data-effect-mobile="slide_right" data-effect-speed-mobile="200" data-panel-width=".container" data-mobile-force-width="html" data-second-click="go" data-document-click="collapse" data-vertical-behaviour="standard" data-breakpoint="1023" data-unbind="true" data-mobile-state="collapse_all" data-mobile-direction="vertical" data-hover-intent-timeout="300" data-hover-intent-interval="100"><li class='mega-menu-item mega-menu-item-type-post_type mega-menu-item-object-page mega-align-bottom-left mega-menu-flyout mega-menu-item-5308' id='mega-menu-item-5308'><a class="mega-menu-link" href="https://gundog-journal.com/news/" tabindex="0">News</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5312' id='mega-menu-item-5312'><a class="mega-menu-link" href="https://gundog-journal.com/training/" tabindex="0">Training</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5311' id='mega-menu-item-5311'><a class="mega-menu-link" href="https://gundog-journal.com/health/" tabindex="0">Health</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5309' id='mega-menu-item-5309'><a class="mega-menu-link" href="https://gundog-journal.com/breeds/" tabindex="0">Breeds</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5310' id='mega-menu-item-5310'><a class="mega-menu-link" href="https://gundog-journal.com/gear/" tabindex="0">
2516Gear</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-75700' id='mega-menu-item-75700'><a class="mega-menu-link" href="https://gundog-journal.com/competitions/" tabindex="0">Competitions</a></li><li class='mega-social-media-links mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-menu-item-has-children mega-menu-megamenu mega-align-bottom-left mega-menu-grid mega-hide-arrow mega-hide-text mega-hide-on-desktop mega-disable-link mega-menu-item-2873 social-media-links' id='mega-menu-item-2873'><a class="mega-menu-link" tabindex="0" aria-expanded="false" role="button" aria-label="Mobile Social Links"><span class="mega-indicator"></span></a>
2517<ul class="mega-sub-menu">
2518<li class='mega-menu-row' id='mega-menu-2873-0'>
2519	<ul class="mega-sub-menu">
2520<li class='mega-menu-column mega-menu-columns-12-of-12' id='mega-menu-2873-0-0'>
2521		<ul class="mega-sub-menu">
2522<li class='mega-menu-item mega-menu-item-type-widget widget_maxmegamenu_reusable_block mega-menu-item-maxmegamenu_reusable_block-3' id='mega-menu-item-maxmegamenu_reusable_block-3'><!-- widget is empty --></li>		</ul>
2523</li>	</ul>
2524</li></ul>
2525</li><li class='mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-menu-item-has-children mega-align-bottom-left mega-menu-flyout mega-menu-item-78376' id='mega-menu-item-78376'><a class="mega-menu-link" href="#" aria-expanded="false" tabindex="0">More<span class="mega-indicator"></span></a>
2526<ul class="mega-sub-menu">
2527<li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-menu-item-78379' id='mega-menu-item-78379'><a class="mega-menu-link" href="https://gundog-journal.com/events/">Events</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-menu-item-78377' id='mega-menu-item-78377'><a class="mega-menu-link" href="https://gundog-journal.com/legislation/">Legislation</a></li><li class='mega-menu-item mega-menu-item-type-post_type mega-menu-item-object-page mega-menu-item-78378' id='mega-menu-item-78378'><a class="mega-menu-link" href="https://gundog-journal.com/faqs/">FAQs</a></li></ul>
2528</li><li class='mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-align-bottom-left mega-menu-flyout mega-menu-item-77866' id='mega-menu-item-77866'><a target="_blank" class="mega-menu-link" href="https://britishshootingshow.com/?utm_source=gundogjournal&#038;utm_medium=nav&#038;utm_campaign=bss" tabindex="0">British Shooting Show</a></li></ul><button class='mega-close' aria-label='Close'></button></div>    </div>
2529
2530    <!-- Search & Buttons -->
2531    <div class="flex flex-row gap-[8px] lg:gap-[10px] xl:gap-[12px] 2xl:gap-[15px] items-center flex-shrink-0 lg:min-w-[200px] xl:min-w-[240px] 2xl:min-w-[280px] justify-end">
2532        <div class="relative flex items-center header-search-wrapper">
2533            <button @click="expanded = !expanded" class="z-50 relative">
2534                            <svg fill="none" height="18" viewBox="0 0 18 18" width="18" xmlns="http://www.w3.org/2000/svg">
2535<circle cx="7" cy="7" r="6.25" stroke="#000000" stroke-width="1.5"/>
2536<path d="M16.6464 17.3536C16.8417 17.5488 17.1583 17.5488 17.3536 17.3536C17.5488 17.1583 17.5488 16.8417 17.3536 16.6464L16.6464 17.3536ZM11.6464 12.3536L16.6464 17.3536L17.3536 16.6464L12.3536 11.6464L11.6464 12.3536Z" fill="#000000"/>
2537</svg>                        </button>
2538        </div>
2539
2540                            	<div class="twsnl-sub twsnl-sub--desktop" data-twsnl-sub>
2541		<button type="button" class="btn-normal btn-primary-hover-dark twsnl-sub-btn" aria-expanded="false" aria-haspopup="true" data-twsnl-sub-btn>
2542			<span>Subscribe</span>
2543			<svg class="twsnl-sub-chev" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="m2.5 4.5 3.5 3.5 3.5-3.5" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg>
2544		</button>
2545
2546		<div class="twsnl-sub-dd" role="menu" hidden data-twsnl-sub-dd>
2547			<span class="twsnl-sub-caret" aria-hidden="true"></span>
2548
2549							<a class="twsnl-sub-row twsnl-sub-row--mag" href="https://shop.twsgroup.com/subscribe/gundog-journal" target="_blank" rel="noopener" role="menuitem">
2550											<span class="twsnl-sub-cover"><img width="240" height="289" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20240%20289'%3E%3C/svg%3E" alt="" decoding="async" data-lazy-src="/app/uploads/sites/2/2026/09/gundog-journal-cover-20260925-133136.jpg"><noscript><img width="240" height="289" src="/app/uploads/sites/2/2026/09/gundog-journal-cover-20260925-133136.jpg" alt="" loading="lazy" decoding="async"></noscript></span>
2551					
2552					<span class="twsnl-sub-text">
2553													<span class="twsnl-sub-eyebrow">The magazine</span>
2554												<span class="twsnl-sub-title">
2554Subscribe to Gundog Journal</span>
2555													<span class="twsnl-sub-desc">Every issue delivered to your door, plus the digital back issue library</span>
2556																			<span class="twsnl-sub-link">Go to the shop<svg class="twsnl-sub-arrow" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
2557											</span>
2558				</a>
2559			
2560							<a class="twsnl-sub-row twsnl-sub-row--news" href="/newsletter/" role="menuitem">
2561					<svg class="twsnl-sub-ico" viewBox="0 0 24 24" fill="none" aria-hidden="true" focusable="false"><rect x="2.75" y="5.25" width="18.5" height="13.5" rx="2" stroke="currentColor" stroke-width="1.6"/><path d="m3.5 7 8.5 6 8.5-6" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>
2562					<span class="twsnl-sub-text">
2563						<span class="twsnl-sub-title">Subscribe to our newsletter</span>
2564													<span class="twsnl-sub-desc">Free monthly email, unsubscribe whenever you like</span>
2565											</span>
2566					<svg class="twsnl-sub-arrow" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>				</a>
2567					</div>
2568	</div>
2569	
2570        
2571                    </div>
2572
2573</div>
2574
2575<!-- Desktop Search Bar (appears below header when expanded) -->
2576<div class="desktop-search-dropdown hidden lg:block absolute top-full left-0 right-0 bg-white shadow-lg z-40"
2577     x-show="expanded"
2578     x-transition:enter="transition ease-out duration-300"
2579     x-transition:enter-start="opacity-0 transform -translate-y-2"
2580     x-transition:enter-end="opacity-100 transform translate-y-0"
2581     x-transition:leave="transition ease-in duration-200"
2582     x-transition:leave-start="opacity-100 transform translate-y-0"
2583     x-transition:leave-end="opacity-0 transform -translate-y-2"
2584     x-collapse>
2585    <div class="container py-[20px]">
2586        <div class="header-search search-wrapper desktop-header-search">
2587            <div class="tws-is-panel" id="tws-is-1" data-tws-is>
2588				<div class="tws-is-box">
2589					<svg class="tws-is-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"/><line x1="16.5" y1="16.5" x2="21" y2="21"/></svg>
2590					<label class="screen-reader-text" for="tws-is-1-q">Search</label>
2591					<input id="tws-is-1-q" class="tws-is-input" type="search" autocomplete="off"
2592						placeholder="Search Gundog Journal…"
2593						aria-label="Search Gundog Journal">
2594					<button type="button" class="tws-is-clear" aria-label="Clear search" hidden>&times;</button>
2595				</div>
2596				<div class="tws-is-body" role="region" aria-live="polite"></div>
2597			</div>        </div>
2598    </div>
2599</div>
2600
2601<!-- Mobile Header -->
2602<div class="nav-header-main flex lg:hidden flex-row justify-between items-center container py-[20px] relative">
2603
2604    <!-- Mobile Menu Toggle (Left) -->
2605    <div class="flex items-center z-10">
2606        <!-- The mega menu will automatically generate its mobile toggle button here -->
2607        <div class="mega-menu-mobile-toggle">
2608            <div id="mega-menu-wrap-primary_navigation" class="mega-menu-wrap"><div class="mega-menu-toggle"><div class="mega-toggle-blocks-left"></div><div class="mega-toggle-blocks-center"></div><div class="mega-toggle-blocks-right"><div class='mega-toggle-block mega-menu-toggle-animated-block mega-toggle-block-0' id='mega-toggle-block-0'><button aria-label="Toggle Menu" class="mega-toggle-animated mega-toggle-animated-slider" type="button" aria-expanded="false">
2609                  <span class="mega-toggle-animated-box">
2610                    <span class="mega-toggle-animated-inner"></span>
2611                  </span>
2612                </button></div></div></div><ul id="mega-menu-primary_navigation" class="mega-menu max-mega-menu mega-menu-horizontal mega-no-js" data-event="hover_intent" data-effect="fade_up" data-effect-speed="200" data-effect-mobile="slide_right" data-effect-speed-mobile="200" data-panel-width=".container" data-mobile-force-width="html" data-second-click="go" data-document-click="collapse" data-vertical-behaviour="standard" data-breakpoint="1023" data-unbind="true" data-mobile-state="collapse_all" data-mobile-direction="vertical" data-hover-intent-timeout="300" data-hover-intent-interval="100"><li class='mega-menu-item mega-menu-item-type-post_type mega-menu-item-object-page mega-align-bottom-left mega-menu-flyout mega-menu-item-5308' id='mega-menu-item-5308'><a class="mega-menu-link" href="https://gundog-journal.com/news/" tabindex="0">News</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5312' id='mega-menu-item-5312'><a class="mega-menu-link" href="https://gundog-journal.com/training/" tabindex="0">Training</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5311' id='mega-menu-item-5311'><a class="mega-menu-link" href="https://gundog-journal.com/health/" tabindex="0">Health</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5309' id='mega-menu-item-5309'><a class="mega-menu-link" href="https://gundog-journal.com/breeds/" tabindex="0">Breeds</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-5310' id='mega-menu-item-5310'><a class="mega-menu-link" href="https://gundog-journal.com/gear/" tabindex="0">
2612Gear</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-align-bottom-left mega-menu-flyout mega-menu-item-75700' id='mega-menu-item-75700'><a class="mega-menu-link" href="https://gundog-journal.com/competitions/" tabindex="0">Competitions</a></li><li class='mega-social-media-links mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-menu-item-has-children mega-menu-megamenu mega-align-bottom-left mega-menu-grid mega-hide-arrow mega-hide-text mega-hide-on-desktop mega-disable-link mega-menu-item-2873 social-media-links' id='mega-menu-item-2873'><a class="mega-menu-link" tabindex="0" aria-expanded="false" role="button" aria-label="Mobile Social Links"><span class="mega-indicator"></span></a>
2613<ul class="mega-sub-menu">
2614<li class='mega-menu-row' id='mega-menu-2873-0'>
2615	<ul class="mega-sub-menu">
2616<li class='mega-menu-column mega-menu-columns-12-of-12' id='mega-menu-2873-0-0'>
2617		<ul class="mega-sub-menu">
2618<li class='mega-menu-item mega-menu-item-type-widget widget_maxmegamenu_reusable_block mega-menu-item-maxmegamenu_reusable_block-3' id='mega-menu-item-maxmegamenu_reusable_block-3'><!-- widget is empty --></li>		</ul>
2619</li>	</ul>
2620</li></ul>
2621</li><li class='mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-menu-item-has-children mega-align-bottom-left mega-menu-flyout mega-menu-item-78376' id='mega-menu-item-78376'><a class="mega-menu-link" href="#" aria-expanded="false" tabindex="0">More<span class="mega-indicator"></span></a>
2622<ul class="mega-sub-menu">
2623<li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-menu-item-78379' id='mega-menu-item-78379'><a class="mega-menu-link" href="https://gundog-journal.com/events/">Events</a></li><li class='mega-menu-item mega-menu-item-type-taxonomy mega-menu-item-object-category mega-menu-item-78377' id='mega-menu-item-78377'><a class="mega-menu-link" href="https://gundog-journal.com/legislation/">Legislation</a></li><li class='mega-menu-item mega-menu-item-type-post_type mega-menu-item-object-page mega-menu-item-78378' id='mega-menu-item-78378'><a class="mega-menu-link" href="https://gundog-journal.com/faqs/">FAQs</a></li></ul>
2624</li><li class='mega-menu-item mega-menu-item-type-custom mega-menu-item-object-custom mega-align-bottom-left mega-menu-flyout mega-menu-item-77866' id='mega-menu-item-77866'><a target="_blank" class="mega-menu-link" href="https://britishshootingshow.com/?utm_source=gundogjournal&#038;utm_medium=nav&#038;utm_campaign=bss" tabindex="0">British Shooting Show</a></li></ul><button class='mega-close' aria-label='Close'></button></div>        </div>
2625    </div>
2626
2627    <!-- Logo (Center) -->
2628    <div class="flex flex-row items-center gap-[15px] absolute left-1/2 transform -translate-x-1/2">
2629                <a href="https://gundog-journal.com/" aria-label="Home">
2630                                        <img width="2000" height="558" class="tws-header-logo" src="/app/uploads/sites/2/2025/01/GJ-logo-BLACK-1.png" alt="" />
2631                    </a>
2632    </div>
2633
2634    <!-- Search (Right) -->
2635    <div class="flex items-center z-10">
2636        <button @click="expanded = !expanded" class="lg:hidden">
2637            <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2638<circle cx="7" cy="7" r="6.25" stroke="#ffffff" stroke-width="1.5"/>
2639<path d="M16.6464 17.3536C16.8417 17.5488 17.1583 17.5488 17.3536 17.3536C17.5488 17.1583 17.5488 16.8417 17.3536 16.6464L16.6464 17.3536ZM11.6464 12.3536L16.6464 17.3536L17.3536 16.6464L12.3536 11.6464L11.6464 12.3536Z" fill="#ffffff"/>
2640</svg>        </button>
2641    </div>
2642
2643</div>
2644
2645
2646<!-- Mobile CTA Buttons -->
2647<div class="nav-header-main flex lg:hidden justify-evenly container align-center pb-[15px] lg:pb-[0px]">
2648          	<div class="twsnl-sub twsnl-sub--mobile" data-twsnl-sub>
2649		<button type="button" class="btn-normal btn-primary-hover-dark twsnl-sub-btn mobile-header-cta" aria-expanded="false" aria-haspopup="true" data-twsnl-sub-btn>
2650			<span>Subscribe</span>
2651			<svg class="twsnl-sub-chev" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false">
2651<path d="m2.5 4.5 3.5 3.5 3.5-3.5" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg>
2652		</button>
2653
2654		<div class="twsnl-sub-dd" role="menu" hidden data-twsnl-sub-dd>
2655			<span class="twsnl-sub-caret" aria-hidden="true"></span>
2656
2657							<a class="twsnl-sub-row twsnl-sub-row--mag" href="https://shop.twsgroup.com/subscribe/gundog-journal" target="_blank" rel="noopener" role="menuitem">
2658											<span class="twsnl-sub-cover"><img width="240" height="289" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20240%20289'%3E%3C/svg%3E" alt="" decoding="async" data-lazy-src="/app/uploads/sites/2/2026/09/gundog-journal-cover-20260925-133136.jpg"><noscript><img width="240" height="289" src="/app/uploads/sites/2/2026/09/gundog-journal-cover-20260925-133136.jpg" alt="" loading="lazy" decoding="async"></noscript></span>
2659					
2660					<span class="twsnl-sub-text">
2661													<span class="twsnl-sub-eyebrow">The magazine</span>
2662												<span class="twsnl-sub-title">
2662Subscribe to Gundog Journal</span>
2663													<span class="twsnl-sub-desc">Every issue delivered to your door, plus the digital back issue library</span>
2664																			<span class="twsnl-sub-link">Go to the shop<svg class="twsnl-sub-arrow" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg></span>
2665											</span>
2666				</a>
2667			
2668							<a class="twsnl-sub-row twsnl-sub-row--news" href="/newsletter/" role="menuitem">
2669					<svg class="twsnl-sub-ico" viewBox="0 0 24 24" fill="none" aria-hidden="true" focusable="false"><rect x="2.75" y="5.25" width="18.5" height="13.5" rx="2" stroke="currentColor" stroke-width="1.6"/><path d="m3.5 7 8.5 6 8.5-6" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>
2670					<span class="twsnl-sub-text">
2671						<span class="twsnl-sub-title">Subscribe to our newsletter</span>
2672													<span class="twsnl-sub-desc">Free monthly email, unsubscribe whenever you like</span>
2673											</span>
2674					<svg class="twsnl-sub-arrow" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path d="M3 8h9M8.5 4.5 12 8l-3.5 3.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>				</a>
2675					</div>
2676	</div>
2677	
2678        </div>
2679
2680<!-- Mobile Search Bar (appears below header when expanded) -->
2681<div class="mobile-search-dropdown lg:hidden bg-white shadow-lg"
2682     x-show="expanded"
2683     x-transition:enter="transition ease-out duration-300"
2684     x-transition:enter-start="opacity-0 transform -translate-y-2"
2685     x-transition:enter-end="opacity-100 transform translate-y-0"
2686     x-transition:leave="transition ease-in duration-200"
2687     x-transition:leave-start="opacity-100 transform translate-y-0"
2688     x-transition:leave-end="opacity-0 transform -translate-y-2"
2689     x-collapse>
2690    <div class="header-search search-wrapper mobile-header-search px-[15px] py-[15px]">
2691        <div class="tws-is-panel" id="tws-is-2" data-tws-is>
2692				<div class="tws-is-box">
2693					<svg class="tws-is-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"/><line x1="16.5" y1="16.5" x2="21" y2="21"/></svg>
2694					<label class="screen-reader-text" for="tws-is-2-q">Search</label>
2695					<input id="tws-is-2-q" class="tws-is-input" type="search" autocomplete="off"
2696						placeholder="Search Gundog Journal…"
2697						aria-label="Search Gundog Journal">
2698					<button type="button" class="tws-is-clear" aria-label="Clear search" hidden>&times;</button>
2699				</div>
2700				<div class="tws-is-body" role="region" aria-live="polite"></div>
2701			</div>    </div>
2702</div>
2703</header>
2704
2705    <!-- Page Content -->
2706    <main  class="text-gray-800">
2707        
2708
2709      <style>.tws-page-title{font-size:28px;line-height:1.15;margin-bottom:20px}.tws-title-h1--sized{font-size:30px;line-height:26px}@media (min-width:768px){.tws-page-title{font-size:45px;line-height:1.1}}</style><section class="relative lg:mt-[40px] mt-[20px]">
2710  
2711
2712  <div class="container ">
2713    <div class="text-and-form-block flex flex-col md:flex-row my-6 w-full max-h-none overflow-hidden">
2714            
2715            <div class="w-full lg:w-7/12 flex flex-col space-y-4 pt-2 pb-2 md:pr-[10%]">
2716                                    <h1 class="text-1xl md:text-[32px] font-bold tws-title-h1">Contact us</h1>
2717                                                    <p class="text-base md:text-md"><p>We&#8217;d love to hear from you!</p>
2718<p>Whether you have subscription inquiries, editorial feedback, or advertising opportunities, our dedicated team is here to assist you. With our extensive experience in the gundog community, we value your input and are committed to providing exceptional service to our readers and partners. Find the right contact information below to connect with our editorial, subscription, or advertising departments.</p>
2719<p>Registered in England and Wales at companies house with company number 10204110.</p>
2720</p>
2721                            </div>
2722
2723            
2724            <div class="w-full lg:w-5/12 flex justify-center md:justify-start h-full">
2725                <div class="wpcf7-container w-full max-w-none p-6">
2726                    <h3 class="mb-8 text-lg font-semibold">Contact form</h3>
2727                    
2728<div class="wpcf7 no-js" id="wpcf7-f2849-o1" lang="en-US" dir="ltr" data-wpcf7-id="2849">
2729<div class="screen-reader-response"><p role="status" aria-live="polite" aria-atomic="true"></p> <ul></ul></div>
2730<form action="/contact/#wpcf7-f2849-o1" method="post" class="wpcf7-form init" aria-label="Contact form" novalidate="novalidate" data-status="init">
2731<fieldset class="hidden-fields-container"><input type="hidden" name="_wpcf7" value="2849" /><input type="hidden" name="_wpcf7_version" value="6.1.7" /><input type="hidden" name="_wpcf7_locale" value="en_US" /><input type="hidden" name="_wpcf7_unit_tag" value="wpcf7-f2849-o1" /><input type="hidden" name="_wpcf7_container_post" value="0" /><input type="hidden" name="_wpcf7_posted_data_hash" value="" /><input type="hidden" name="_wpcf7_recaptcha_response" value="" />
2732</fieldset>
2733<div class="relative z-0">
2734<span class="wpcf7-form-control-wrap" data-name="your-name">
2735<input size="40" maxlength="400" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required floating-standard peer" autocomplete="name" aria-required="true" aria-invalid="false" placeholder="" value="" type="text" name="your-name" />
2736    <label for="your-name" class="floating-standard-label duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-[0] peer-focus:start-0 peer-focus:text-gray-600 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Full Name * </label>
2737</span>
2738</div>
2739
2740<div class="relative z-0">
2741<span class="wpcf7-form-control-wrap" data-name="your-email">
2742<input size="40" maxlength="400" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required floating-standard peer" autocomplete="name" aria-required="true" aria-invalid="false" placeholder="" value="" type="text" name="your-email" />
2743    <label for="your-email" class="floating-standard-label duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-[0] peer-focus:start-0 peer-focus:text-gray-600 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Email address * </label>
2744</span>
2745</div>
2746
2747
2748<div class="relative z-0">
2749<span class="wpcf7-form-control-wrap" data-name="your-message">
2750<textarea cols="40" rows="4" maxlength="2000" class="wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required floating-standard peer" autocomplete="name" aria-required="true" aria-invalid="false" placeholder="" name="your-message"></textarea>
2751    <label for="your-message" class="floating-standard-label duration-300 transform -translate-y-6 scale-75 top-3 -z-10 origin-[0] peer-focus:start-0 peer-focus:text-gray-600 peer-placeholder-shown:scale-100 peer-placeholder-shown:translate-y-0 peer-focus:scale-75 peer-focus:-translate-y-6 rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto">Message * </label>
2752</span>
2753</div>
2754
2755
2756<span class="wpcf7-form-control wpcf7-acceptance"><span class="wpcf7-list-item"><label><input type="checkbox" name="acceptance-to-form" value="1" aria-invalid="false" /><span class="wpcf7-list-item-label">I agree to the terms &#038; conditions. Please see our <a href="/privacy-policy" style="text-decoration: underline;" target="_blank">Privacy Policy</a> for further information</span></label></span></span>
2757
2758<input class="wpcf7-form-control wpcf7-submit has-spinner btn-normal btn-primary-hover-dark" type="submit" value="Submit" /><div class="wpcf7-response-output" aria-hidden="true"></div>
2759</form>
2760</div>
2761
2762                </div>
2763            </div>
2764        </div>
2765  </div>
2766
2767  
2768</section>
2769
2770
2771<section class="relative lg:mt-[40px] mt-[20px]">
2772  
2773
2774  <div class="container ">
2775    <div class="flex flex-col items-start md:flex-row gap-[75px] my-8">
2776
2777            
2778            <div class="w-full md:w-1/2 flex flex-col">
2779                                    <h3 class="text-2xl md:text-3xl font-semibold text-gray-800 mb
2779-4 md:mb-6 text-left">
2780                        Editorial
2781                    </h3>
2782                                <div class="text-gray-600 text-base md:text-lg font-light leading-relaxed text-left">
2783                    <p>If you&#8217;d like to get in touch with our editorial team, please contact:</p>
2784<p>Rebecca Green, Editor</p>
2785<p>E: <a href="mailto:[email protected]">[email protected]</a> or <a href="mailto:[email protected]">[email protected]</a></p>
2786
2787                </div>
2788            </div>
2789
2790            
2791            <div class="w-full md:w-1/2 flex flex-col">
2792                                    <h3 class="text-2xl md:text-3xl font-semibold text-gray-800 mb-4 md:mb-6 text-left">
2793                        Advertising
2794                    </h3>
2795                                <div class="text-gray-600 text-base md:text-lg font-light leading-relaxed text-left">
2796                    <p>If you&#8217;d like to get in touch with our advertising team, please contact:</p>
2797<p>Chetna Matharu<!-- notionvc: 77844590-2495-4ad7-b451-236da8c4b66a -->, Account Manager</p>
2798<p>E: <a title="mailto:[email protected]" href="mailto:[email protected]" target="_blank" rel="noopener" aria-label="Link [email protected]">chetna.matharu<!-- notionvc: 77844590-2495-4ad7-b451-236da8c4b66a -->@twsgroup.com</a></p>
2799<p>T: <a href="tel:+44 (0) 131 573 0373"> +44 (0) 131 573 0373</a></p>
2800
2801                </div>
2802            </div>
2803
2804        </div>
2805  </div>
2806
2807  
2808</section>
2809
2810
2811<section class="relative lg:mt-[40px] mt-[20px]">
2812  
2813
2814  <div class="container ">
2815    <div class="flex flex-col items-start md:flex-row gap-[75px] my-8">
2816
2817            
2818            <div class="w-full md:w-1/2 flex flex-col">
2819                                    <h3 class="text-2xl md:text-3xl font-semibold text-gray-800 mb-4 md:mb-6 text-left">
2820                        Subscriptions, single issues and books
2821                    </h3>
2822                                <div class="text-gray-600 text-base md:text-lg font-light leading-relaxed text-left">
2823                    <p>To subscribe to Gundog Journal, buy a single issue or one of our books, please visit <a href="https://shop.twsgroup.com/">shop.twsgroup.com</a>, or call 0131 3576305. You can also email any questions about your subscription to <a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="e18e9385849392a195969286938e9491cf828e8c">[email&#160;protected]</a> or visit the FAQs page <a href="https://shop.twsgroup.com/subscription-faqs">here</a>.</p>
2824
2825                </div>
2826            </div>
2827
2828            
2829            <div class="w-full md:w-1/2 flex flex-col">
2830                                    <h3 class="text-2xl md:text-3xl font-semibold text-gray-800 mb-4 md:mb-6 text-left">
2831                        Trading address
2832                    </h3>
2833                                <div class="text-gray-600 text-base md:text-lg font-light leading-relaxed text-left">
2834                    <p>Time Well Spent Group Limited, C/O Avonglen, Epsilon House,<br />
2835Enterprise Road, Southampton Science Park,<br />
2836Southampton, Hampshire, SO16 7NS</p>
2837
2838                </div>
2839            </div>
2840
2841        </div>
2842  </div>
2843
2844  
2845</section>
2846
2847
2848<section class="relative lg:mt-[40px] mt-[20px]">
2849  
2850
2851  <div class="container ">
2852    <div class="flex justify-center items-center">
2853      <div class="a-single a-2"><!-- /22987101562/GDJ.com-WideUpperBanner-MPU style='min-width: 320px; min-height: 90px;' -->
2854<div id='div-gpt-ad-1737909961481-0'>
vendor: 112 bytes, lines 2854-2855
2854
2855  <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
2855<script>
2856    // Event Listener added by NetMatters
2857    window.addEventListener('gptScriptLoaded', function() {
2858      googletag.cmd.push(function() { googletag.display('div-gpt-ad-1737909961481-0'); });
2859    });
2860  </script>
2860
2861</div></div>    </div>
2862  </div>
2863
2864  
2865</section>
2866
2867
2868
2869    </main>
2870
2871</div>
2872
2873<div  class="mt-[20px] lg:mt-[40px] disable-wpr-lazyrender">
2874        <div  class="subscribe-cta-block bg-black py-[80px] md:py-[40px]">
2875
2876    <div class="container gap-[20px] flex flex-col lg:flex-row w-full overflow-hidden items-center">
2877                    
2878            
2879            <div
2880                class="w-full lg:w-1/2 gap-[20px] flex flex-col justify-center text-white text-center subscribe-content-left">
2881                <div>
2882                                            <p class="text-[12px] text-center font-light lg:text-left text-white">Get the latest news delivered direct to your door</p>
2883                                                                <h2 style="margin-bottom: 0;" class="text-[32px] leading-normal text-center lg:text-left font-bold">
2884                            Subscribe to Gundog Journal</h2>
2885                                    </div>
2886
2887                                    <div class="text-base lg:text-md text-center font-light leading-[24px] lg:text-left ">
2888                        <p>Unlock the full potential of your working dog with a subscription to Gundog Journal, the UK&#8217;s only dedicated magazine for gundog enthusiasts. Published bi-monthly, this authoritative resource delivers expert training advice, in-depth interviews with top trainers and veterinary guidance to help you nurture a stronger bond with your dog.</p>
2889<p>With stunning photography and thought-provoking content, Gundog Journal is your essential guide to understanding, training and celebrating your working dog.</p>
2890<p><strong>Save 16% on shop price</strong> when you subscribe, with a choice of packages that work for you. Choose from Print &amp; Digital or Digital only with each journal delivered directly to your door or via the app every other month, plus access to past issues with the digital back issue library.</p>
2891<p>&nbsp;</p>
2892
2893                    </div>
2894                                                    <a  href="https://shop.twsgroup.com/subscribe/gundog-journal"
2895                        class="btn-normal mb-[80px] md:mb-[0px] lg:mb-[0] btn-primary-hover-dark mx-auto lg:mr-auto lg:ml-0 inline-block"
2896                        style="background-color: #b38750;">
2897                        Subscribe
2898                    </a>
2899                            </div>
2900
2901            
2902                                                    <div class="flex flex-row w-full lg:w-1/2 h-full gap-[20px] md:gap-[40px] lg:gap-[20px]">
2903                    <div class="w-full flex lg:w-1/2">
2904                        <img width="1404" height="1700" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201404%201700'%3E%3C/svg%3E" alt="Subscribe to Gundog Journal"
2905                            class="w-full aspect-[0.83/1] object-contain" data-lazy-src="/app/uploads/sites/2/2025/01/GJ-6.2.jpg"><noscript><img width="1404" height="1700" src="/app/uploads/sites/2/2025/01/GJ-6.2.jpg" alt="Subscribe to Gundog Journal"
2906                            class="w-full aspect-[0.83/1] object-contain"></noscript>
2907                    </div>
2908                    <div class="w-full flex lg:w-1/2">
2909                        <img width="2123" height="2560" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%202123%202560'%3E%3C/svg%3E" alt="Subscribe to Gundog Journal"
2910                            class="w-full aspect-[0.83/1] object-contain" data-lazy-src="/app/uploads/sites/2/2025/01/GJ-6.3-scaled.jpg"><noscript><img width="2123" height="2560" src="/app/uploads/sites/2/2025/01/GJ-6.3-scaled.jpg" alt="Subscribe to Gundog Journal"
2911                            class="w-full aspect-[0.83/1] object-contain"></noscript>
2912                    </div>
2913                </div>
2914                        </div>
2915
2916</div>
2917    </div>
2918
2919<footer  class="bg-secondary text-white disable-wpr-lazyrender">
2920    <div  class="container">
2921        <div class="footer-top flex container py-[20px] lg:py-[40px] px-0">
2922            <div class="grid grid-cols-12 w-full gap-[20px] lg:gap-[40px]">
2923                <div class="order-1 lg:order-1 flex flex-col gap-16px column-1 col-span-12 md:col-span-6 lg:col-span-3">
2924                    <div class="footer-logo-wrapper flex flex-col items-center w-full md:w-fit mb-[20px] lg:mb-[0]">
2925                                                                            <a href="https://gundog-journal.com/" aria-label="Home" class="flex justify-start w-[100%]">
2926                                <img width="261" height="73" class="footer-logo w-auto mb-[10px] h-[45px]" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20261%2073'%3E%3C/svg%3E"
2927                                    alt="" data-lazy-src="/app/uploads/sites/2/2024/11/shootinguklogo-160-1.png" /><noscript><img width="261" height="73" class="footer-logo w-auto mb-[10px] h-[45px]" src="/app/uploads/sites/2/2024/11/shootinguklogo-160-1.png"
2928                                    alt="" /></noscript>
2929                            </a>
2930                                                                                                    <h6 class="text-[12px] text-center">Training . Advice . Comment</h6>
2931                                            </div>
2932                    <div
2933                        class="flex md:hidden footer-form-container flex flex-col column-5 col
2933-span-12 md:col-span-6 lg:col-span-3">
2934                                                                            <h4 class="mb-5 pb-2 text-[12px]">Subscribe to our newsletter today: </h4>
2935                                            <a href="https://gundog-journal.com/newsletter/" 
2936                    class="btn-normal mb-[20px] btn-primary-hover-dark text-white hover:text-white">
2937                        Sign up
2938                    </a>
2939                    </div>
2940
2941                    <div class="footer-contacts flex flex-col gap-16px">
2942                        <span class="text-white text-base">Get in touch:</span>
2943                        <div class="flex items-center gap-16px">
2944                                                                                        <svg class="h-6 w-6 min-w-6 fill-white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21.384,17.752a2.108,2.108,0,0,1-.522,3.359,7.543,7.543,0,0,1-5.476.642C10.5,20.523,3.477,13.5,2.247,8.614a7.543,7.543,0,0,1,.642-5.476,2.108,2.108,0,0,1,3.359-.522L8.333,4.7a2.094,2.094,0,0,1,.445,2.328A3.877,3.877,0,0,1,8,8.2c-2.384,2.384,5.417,10.185,7.8,7.8a3.877,3.877,0,0,1,1.173-.781,2.092,2.092,0,0,1,2.328.445Z"/></svg>                                <a class="text-[12px] hover:text-primary" href="tel:+441313576305"
2945                                    >+44 (0) 131 357 6305</a>
2946                                                    </div>
2947                        <div class="flex items-center gap-16px">
2948                                                                                        <svg class="h-6 w-6 min-w-6 fill-white" fill="#ffffff" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 488 488" xml:space="preserve" stroke="#ffffff">
2949<path d="M487.9,87.85c0-0.2,0-0.4,0-0.6c0-0.1,0-0.2,0-0.4s-0.1-0.4-0.1-0.6c0-0.1,0-0.3-0.1-0.4c0-0.2-0.1-0.3-0.1-0.5 c0-0.1-0.1-0.3-0.1-0.4c0-0.1-0.1-0.3-0.2-0.4c-0.1-0.2-0.1-0.3-0.2-0.5c-0.1-0.1-0.1-0.2-0.2-0.4c-0.1-0.2-0.2-0.4-0.3-0.5 c-0.1-0.1-0.1-0.2-0.2-0.3c-0.1-0.2-0.2-0.4-0.3-0.5c0,0,0-0.1-0.1-0.1c-0.1-0.1-0.1-0.2-0.2-0.2c-0.1-0.2-0.2-0.3-0.4-0.4 c-0.1-0.1-0.2-0.2-0.3-0.4c-0.1-0.1-0.2-0.2-0.3-0.3c-0.1-0.1-0.3-0.2-0.4-0.4c-0.1-0.1-0.2-0.2-0.3-0.3s-0.3-0.2-0.4-0.3 c-0.1-0.1-0.2-0.2-0.3-0.2c-0.1-0.1-0.3-0.2-0.5-0.3c-0.1-0.1-0.3-0.1-0.4-0.2c-0.1-0.1-0.3-0.1-0.4-0.2c-0.2-0.1-0.3-0.1-0.5-0.2 c-0.1-0.1-0.3-0.1-0.4-0.2c-0.2-0.1-0.3-0.1-0.5-0.2c-0.1,0-0.3-0.1-0.4-0.1c-0.2,0-0.3-0.1-0.5-0.1s-0.3-0.1-0.5-0.1 s-0.3,0-0.5-0.1c-0.2,0-0.4,0-0.6,0c-0.1,0-0.2,0-0.3,0H9.9c-0.1,0-0.2,0-0.3,0c-0.2,0-0.4,0-0.5,0c-0.2,0-0.3,0-0.5,0.1 c-0.2,0-0.3,0-0.5,0.1c-0.2,0-0.4,0.1-0.5,0.1c-0.1,0-0.3,0.1-0.4,0.1c-0.2,0.1-0.4,0.1-0.5,0.2c-0.1,0-0.3,0.1-0.4,0.1 c-0.2,0.1-0.3,0.1-0.5,0.2c-0.1,0.1-0.3,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.3c-0.1,0.1-0.2,0.2-0.4,0.2 c-0.1,0.1-0.3,0.2-0.4,0.3c-0.1,0.1-0.2,0.2-0.3,0.3c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.1-0.2,0.2-0.3,0.3c-0.1,0.1-0.2,0.2-0.3,0.4 c-0.1,0.1-0.2,0.3-0.4,0.5c-0.1,0.1-0.1,0.1-0.2,0.2c0,0,0,0.1-0.1,0.1c-0.1,0.2-0.2,0.4-0.3,0.5c-0.1,0.1-0.1,0.2-0.2,0.3 c-0.1,0.2-0.2,0.4-0.3,0.5c-0.1,0.1-0.1,0.2-0.2,0.4c-0.1,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.1,0.3-0.2,0.4c0,0.1-0.1,0.3-0.1,0.4 c0,0.2-0.1,0.3-0.1,0.5c0,0.1,0,0.3-0.1,0.4c0,0.2-0.1,0.4-0.1,0.6c0,0.1,0,0.2,0,0.4s0,0.4,0,0.6v0.1v312c0,5.5,4.5,10,10,10h468 c5.5,0,10-4.5,10-10v-312C487.9,87.95,487.9,87.85,487.9,87.85z M446.7,97.95l-202.8,144.6L41.1,97.95H446.7z M467.9,389.95h-448 v-282.6l218.2,155.6c1.7,1.2,3.8,1.9,5.8,1.9s4.1-0.6,5.8-1.9l218.2-155.6V389.95z"/>
2950
2951</svg>                                <a class="text-[12px] hover:text-primary break-all"
2952                                    href="mailto:[email protected]"
2953                                    >[email protected]</a>
2954                                                    </div>
2955                    </div>
2956
2957
2958                                        <div class="downloadable-links flex flex-col gap-4 mb-5 lg:mb-0">
2959                        <span class="text-white text-base">On the go? Get the app:</span>
2960                        <div class="flex gap-[10px]">
2961                                                            <a href="https://apps.apple.com/us/app/gundog-journal/id6463429302" target="_blank" rel="noopener noreferrer" class="d-block">
2962                                    <img width="511" height="179" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20511%20179'%3E%3C/svg%3E" alt="Download on the App Store"
2963                                        class=" h-[50px] max-h-[50px]" data-lazy-src="/app/uploads/sites/2/2025/03/app_store_download_button_txGvG.png"><noscript><img width="511" height="179" src="/app/uploads/sites/2/2025/03/app_store_download_button_txGvG.png" alt="Download on the App Store"
2964                                        class=" h-[50px] max-h-[50px]"></noscript>
2965                                </a>
2966                                                                                        <a href="https://play.google.com/store/apps/details?id=com.jellyfish.gundogjournal" target="_blank" rel="noopener noreferrer" class="d-block">
2967                                    <img width="575" height="179" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20575%20179'%3E%3C/svg%3E" alt="Download on Google Play"
2968                                        class=" h-[50px] max-h-[50px]" data-lazy-src="/app/uploads/sites/2/2025/03/google_play_download_button_TLBWZ.png"><noscript><img width="575" height="179" src="/app/uploads/sites/2/2025/03/google_play_download_button_TLBWZ.png" alt="Download on Google Play"
2969                                        class=" h-[50px] max-h-[50px]"></noscript>
2970                                </a>
2971                                                    </div>
2972                    </div>
2973                
2974                </div>
2975
2976                <div  x-data="{ expanded_1: window.innerWidth > 899 }"
2977                    class="mb-[20px] lg:mb-[0] text-[12px] order-3 lg:order-2 flex flex-col column-2 col-span-12 md:col-span-4 lg:col-span-2">
2978                                                                <h4 :class="{
2979                            'after:ml-auto after:content-[\'\\f343\'] after:font-[dashicons]': expanded_1 && window
2980                                .innerWidth <
2981                                899,
2982                            'after:ml-auto after:content-[\'\\f347\'] after:font-[dashicons]': !expanded_1 && window
2983                                .innerWidth < 899
2984                        }"
2985                            @click="expanded_1 = ! expanded_1" class="border-b border-white mb-4 pb-2 flex">
2986                            Useful links                        </h4>
2987                                        <div x-show="expanded_1" x-collapse>
2988                        <div class="menu-useful-links-container"><ul id="menu-useful-links" class="menu text-[12px] list-disc pl-[20px] flex flex-col gap-[10px]"><li id="menu-item-2870" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2870"><a href="https://gundog-journal.com/about-us/">About us</a></li>
2989<li id="menu-item-2869" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2869"><a href="https://gundog-journal.com/faqs/">FAQs</a></li>
2990<li id="menu-item-2871" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-197 current_page_item menu-item-2871"><a href="https://gundog-journal.com/contact/" aria-current="page">Contact us</a></li>
2991<li id="menu-item-3624" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-3624"><a href="https://gundog-journal.com/advertise-with-us/">Advertise with us</a></li>
2992</ul></div>                    </div>
2993                </div>
2994
2995                <div x-data="{ expanded_2: window.innerWidth > 899 }"
2996                    class="mb-[20px] lg:mb-[0] text-[12px] order-4 lg:order-3 flex flex-col column-3 col-span-12 md:col-span-4 lg:col-span-2">
2997                                                                <h4 :class="{
2998                            'after:ml-auto after:content-[\'\\f343\'] after:font-[dashicons]': expanded_2 && window
2999                                .innerWidth <
3000                                899,
3001                            'after:ml-auto after:content-[\'\\f347\'] after:font-[dashicons]': !expanded_2 && window
3002                                .innerWidth < 899
3003                        }"
3004                            @click="expanded_2 = ! expanded_2" class="border-b border-white mb-4 pb-2 flex">
3005                            Policies                        </h4>
3006                                        <div x-show="expanded_2" x-collapse>
3007                        <div class="menu-policies-container"><ul id="menu-policies" class="menu text-[12px] list-disc pl-[20px] flex flex-col gap-[10px]"><li id="menu-item-31674" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-31674"><a href="https://gundog-journal.com/terms-and-conditions/">Terms and conditions</a></li>
3008<li id="menu-item-10173" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10173"><a href="https://gundog-journal.com/cookie-policy/">Cookie policy</a></li>
3009<li id="menu-item-10174" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-10174"><a rel="privacy-policy" href="https://gundog-journal.com/privacy-policy/">Privacy policy</a></li>
3010</ul></div>                    </div>
3011
3012                    
3013                                                                <h4 :class="{
3014                            'after:ml-auto after:content-[\'\\f343\'] after:font-[dashicons]': expanded_2 && window
3015                                .innerWidth <
3016                                899,
3017                            'after:ml-auto after:content-[\'\\f347\'] after:font-[dashicons]': !expanded_2 && window
3018                                .innerWidth < 899
3019                        }"
3020                            @click="expanded_2 = ! expanded_2" class="border-b border-white mb-4 pb-2 mt-[40px] lg:mt-4 flex">
3021                            Other Interests                        </h4>
3022                        <div x-show="expanded_2" x-collapse>
3023                            <div class="menu-other-interests-container"><ul id="menu-other-interests" class="menu text-[12px] list-disc pl-[20px] flex flex-col gap-[10px]"><li id="menu-item-75895" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75895"><a href="https://www.shootinguk.co.uk/">ShootingUK</a></li>
3024<li id="menu-item-75896" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75896"><a href="https://fieldsports-journal.com/">Fieldsports Journal</a></li>
3025<li id="menu-item-75897" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75897"><a href="https://airgun-world.com/">Airgun World</a></li>
3026<li id="menu-item-75898" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75898"><a href="https://rifle-shooter.com/">Rifle Shooter</a></li>
3027<li id="menu-item-75899" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75899"><a href="https://sporting-gun.com/">Sporting Gun</a></li>
3028<li id="menu-item-75900" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75900"><a href="https://troutandsalmon.com/">Trout &#038; Salmon</a></li>
3029</ul></div>                        </div>
3030                                    </div>
3031
3032                <div class="mb-[20px] lg:mb-[0] order-5 lg:order-4 flex flex-col column-4 c
3032ol-span-12 md:col-span-4 lg:col-span-2">
3033                                                                <h4 class="mb-4 text-[12px] pb-2">Part of Time Well Spent</h4>
3034                                                                                    <a class="hover:opacity-80 flex justify-center lg:justify-start" target="_blank"
3035                            href="http://twsgroup.com">
3036                            <img width="198" height="94" class="twsgroup-logo w-[250px] h-[125px] md:w-[150px] md:h-[75px] object-contain"
3037                                src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20198%2094'%3E%3C/svg%3E" alt="" data-lazy-src="/app/uploads/sites/2/2024/11/Frame-17.png" /><noscript><img width="198" height="94" class="twsgroup-logo w-[250px] h-[125px] md:w-[150px] md:h-[75px] object-contain"
3038                                src="/app/uploads/sites/2/2024/11/Frame-17.png" alt="" /></noscript>
3039                        </a>
3040                                    </div>
3041
3042                <div
3043                    class="hidden md:flex footer-form-container order-2 lg:order-5 flex flex-col column-5 col-span-12 md:col-span-6 lg:col-span-3">
3044                                                                <h4 class="mb-5 pb-2 text-[12px]">Subscribe to our newsletter today: </h4>
3045                                        <a href="https://gundog-journal.com/newsletter/" 
3046                    class="btn-normal mb-[20px] btn-primary-hover-dark text-white hover:text-white">
3047                        Sign up
3048                    </a>
3049
3050                    <div class="social-icons flex flex-col gap-16px mb-[20px] lg:mb-[0]">
3051                        <span class="text-white text-base">Connect with us:</span>
3052                        <div class="flex">
3053
3054                                                        <a class="flex justify-center items-center w-[30px] h-[30px]" href="https://www.facebook.com/GundogJournal/">
3055  <span class="sr-only">Facebook</span>
3056                                <svg class="h-[1.375rem] social-icon" width="14" height="24" viewBox="0 0 14 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3057  <path d="M12.5429 13.3981L13.2041 9.08738H9.06818V6.2901C9.06818 5.11078 9.64605 3.96117 11.4985 3.96117H13.3789V0.291262C13.3789 0.291262 11.6724 0 10.0407 0C6.6344 0 4.40799 2.06447 4.40799 5.80194V9.08738H0.621582V13.3981H4.40799V23.8188C5.16731 23.938 5.94527 24 6.73809 24C7.5309 24 8.30886 23.938 9.06818 23.8188V13.3981H12.5429Z" fill="#ffffff"/>
3058</svg>
3059</a>
3060                            
3061                                                        <a class="flex justify-center items-center w-[30px] h-[30px]" href="https://www.instagram.com/gundogjournal/">
3062  <span class="sr-only">Instagram</span>
3063                                <svg class="h-[1.375rem] social-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3064  <g clip-path="url(#clip0_501_3526)">
3065    <path d="M7.03009 0.083057C5.75329 0.143297 4.88113 0.347777 4.11913 0.646337C3.33025 0.953777 2.66161 1.3661 1.99633 2.03402C1.33033 2.70242 0.921366 3.37226 0.616086 4.16186C0.320646 4.92578 0.120246 5.79842 0.0640856 7.07594C0.00792558 8.3561 -0.00479442 8.76434 0.00144558 12.0231C0.00768558 15.2813 0.0220856 15.6903 0.0830456 16.9707C0.144006 18.2472 0.347766 19.1189 0.646326 19.8814C0.954246 20.6703 1.36609 21.3387 2.03425 22.0042C2.70217 22.6697 3.37249 23.0784 4.16257 23.3839C4.92577 23.6791 5.79865 23.88 7.07593 23.9359C8.35585 23.9923 8.76457 24.0048 12.0223 23.9986C15.2815 23.9923 15.6902 23.9779 16.9702 23.9172C18.247 23.8563 19.1182 23.6518 19.8811 23.3539C20.67 23.0453 21.3386 22.6342 22.0039 21.966C22.6692 21.2981 23.0782 20.6278 23.3834 19.8377C23.6789 19.0745 23.88 18.2016 23.9354 16.9251C23.9914 15.6444 24.0046 15.2352 23.9983 11.9772C23.9921 8.71874 23.9774 8.3105 23.9167 7.03082C23.856 5.7533 23.6515 4.88186 23.3534 4.11914C23.045 3.33026 22.6337 2.66234 21.9658 1.99634C21.2978 1.33106 20.6275 0.921377 19.8374 0.616817C19.0738 0.321377 18.2014 0.120017 16.9241 0.064817C15.6444 0.00769698 15.2359 -0.00478302 11.977 0.00145698C8.71873 0.00769698 8.31025 0.021617 7.03033 0.083057M7.17025 21.7762C6.00025 21.7253 5.36497 21.5309 4.94161 21.3679C4.38097 21.151 3.98089 20.8908 3.55969 20.473C3.13945 20.0535 2.87857 19.6546 2.65969 19.0951C2.49529 18.6718 2.29729 18.0372 2.24257 16.8672C2.18305 15.6024 2.16937 15.223 2.16361 12.0187C2.15737 8.81546 2.16913 8.43578 2.22433 7.17002C2.27449 6.00098 2.47009 5.36474 2.63257 4.94186C2.84953 4.3805 3.10873 3.98114 3.52753 3.55994C3.94705 3.13898 4.34593 2.87882 4.90585 2.65994C5.32897 2.49458 5.96329 2.29826 7.13281 2.24282C8.39833 2.18282 8.77753 2.1701 11.9808 2.16386C15.1848 2.15762 15.5645 2.1689 16.8302 2.22458C17.9993 2.27546 18.6355 2.46914 19.0582 2.63282C19.6193 2.84978 20.0194 3.10826 20.4401 3.52778C20.8608 3.9473 21.1217 4.34546 21.3406 4.90658C21.5057 5.3285 21.7022 5.96378 21.7574 7.13282C21.8177 8.39834 21.8314 8.77778 21.8371 11.9813C21.8434 15.1855 21.8316 15.565 21.7762 16.83C21.7253 18 21.5311 18.6355 21.3679 19.0594C21.151 19.6195 20.8915 20.0196 20.4725 20.4408C20.0534 20.8603 19.6546 21.1219 19.0942 21.3408C18.672 21.5057 18.0367 21.7025 16.8679 21.7579C15.6024 21.8175 15.2232 21.8311 12.0187 21.8369C8.81545 21.8431 8.43625 21.8311 7.17049 21.7762M16.9526 5.58554C16.9541 6.38018 17.6004 7.02362 18.395 7.02218C19.1902 7.02074 19.8336 6.3749 19.8324 5.58002C19.8307 4.78538 19.1846 4.14146 18.3895 4.1429C17.5944 4.14434 16.951 4.79066 16.9524 5.5853M5.83849 12.0118C5.84497 15.415 8.60905 18.1678 12.0115 18.1611C15.4142 18.1543 18.1685 15.3912 18.162 11.988C18.1553 8.58602 15.391 5.83178 11.9878 5.83826C8.58529 5.84498 5.83177 8.6093 5.83849 12.0118ZM7.99993 12.0075C7.99609 9.79874 9.78385 8.00426 11.9921 8.00042C14.2008 7.9961 15.9955 9.78314 15.9998 11.9923C16.0042 14.2015 14.2164 15.9955 12.0072 15.9999C9.79873 16.0042 8.00401 14.2169 7.99993 12.0077" fill="#ffffff"/>
3066  </g>
3067  <defs>
3068    <clipPath id="clip0_501_3526">
3069      <rect width="24" height="24" fill="white"/>
3070    </clipPath>
3071  </defs>
3072</svg>
3073</a>
3074                            
3075                            
3076                            
3077                            
3078                        </div>
3079                    </div>
3080
3081
3082                </div>
3083            </div>
3084        </div>
3085    </div>
3086
3087    <div  class="bg-primary footer-bottom py-[10px]">
3088        <div class="container flex flex-wrap gap-[10px] justify-center lg:justify-between ">
3089            <div class="text-center">
3090                                                    <a class="!text-center text-[12px] hover:text-white hover:underline"
3091                        href="/sitemap_index.xml"
3092                        >
3093                        Sitemap                    </a>
3094                            </div>
3095            <div class="copyright text-[12px] text-center">
3096                <span>© Time Well Spent Group, All rights reserved. Registered in England and Wales at Companies
3097                    House
3098                    with company number 10204110</span>
3099            </div>
3100        </div>
3101
3102    </div>
3103
3104<!-- Netmatters Uptime Ping Test Response -->
3105</footer>
3106    </div>
3107
3108        
3109<!-- Consent Management powered by Complianz | GDPR/CCPA Cookie Consent https://wordpress.org/plugins/complianz-gdpr -->
3110<div id="cmplz-cookiebanner-container"><div class="cmplz-cookiebanner cmplz-hidden banner-1 banner-a optin cmplz-center cmplz-categories-type-view-preferences" aria-modal="true" data-nosnippet="true" role="dialog" aria-live="polite" aria-labelledby="cmplz-header-1-optin" aria-describedby="cmplz-message-1-optin">
3111	<div class="cmplz-header">
3112		<div class="cmplz-logo"></div>
3113		<div class="cmplz-title" id="cmplz-header-1-optin">Manage Consent</div>
3114		<div class="cmplz-close" tabindex="0" role="button" aria-label="Close dialog">
3115			<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="times" class="svg-inline--fa fa-times fa-w-11" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 352 512"><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg>
3116		</div>
3117	</div>
3118
3119	<div class="cmplz-divider cmplz-divider-header"></div>
3120	<div class="cmplz-body">
3121		<div class="cmplz-message" id="cmplz-message-1-optin">To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.</div>
3122		<!-- categories start -->
3123		<div class="cmplz-categories">
3124			<details class="cmplz-category cmplz-functional" >
3125				<summary>
3126						<span class="cmplz-category-header">
3127							<span class="cmplz-category-title">Functional</span>
3128							<span class='cmplz-always-active'>
3129								<span class="cmplz-banner-checkbox">
3130									<input type="checkbox"
3131										   id="cmplz-functional-optin"
3132										   data-category="cmplz_functional"
3133										   class="cmplz-consent-checkbox cmplz-functional"
3134										   size="40"
3135										   value="1"/>
3136									<label class="cmplz-label" for="cmplz-functional-optin" tabindex="0"><span class="screen-reader-text">Functional</span></label>
3137								</span>
3138								Always active							</span>
3139							<span class="cmplz-icon cmplz-open">
3140								<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"  height="18" ><path d="M224 416c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L224 338.8l169.4-169.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-192 192C240.4 412.9 232.2 416 224 416z"/></svg>
3141							</span>
3142						</span>
3143				</summary>
3144				<div class="cmplz-description">
3145					<span class="cmplz-description-functional">The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.</span>
3146				</div>
3147			</details>
3148
3149			<details class="cmplz-category cmplz-preferences" >
3150				<summary>
3151						<span class="cmplz-category-header">
3152							<span class="cmplz-category-title">Preferences</span>
3153							<span class="cmplz-banner-checkbox">
3154								<input type="checkbox"
3155									   id="cmplz-preferences-optin"
3156									   data-category="cmplz_preferences"
3157									   class="cmplz-consent-checkbox cmplz-preferences"
3158									   size="40"
3159									   value="1"/>
3160								<label class="cmplz-label" for="cmplz-preferences-optin" tabindex="0"><span class="screen-reader-text">Preferences</span></label>
3161							</span>
3162							<span class="cmplz-icon cmplz-open">
3163								<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"  height="18" >
3163<path d="M224 416c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L224 338.8l169.4-169.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-192 192C240.4 412.9 232.2 416 224 416z"/></svg>
3164							</span>
3165						</span>
3166				</summary>
3167				<div class="cmplz-description">
3168					<span class="cmplz-description-preferences">The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.</span>
3169				</div>
3170			</details>
3171
3172			<details class="cmplz-category cmplz-statistics" >
3173				<summary>
3174						<span class="cmplz-category-header">
3175							<span class="cmplz-category-title">Statistics</span>
3176							<span class="cmplz-banner-checkbox">
3177								<input type="checkbox"
3178									   id="cmplz-statistics-optin"
3179									   data-category="cmplz_statistics"
3180									   class="cmplz-consent-checkbox cmplz-statistics"
3181									   size="40"
3182									   value="1"/>
3183								<label class="cmplz-label" for="cmplz-statistics-optin" tabindex="0"><span class="screen-reader-text">Statistics</span></label>
3184							</span>
3185							<span class="cmplz-icon cmplz-open">
3186								<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"  height="18" ><path d="M224 416c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L224 338.8l169.4-169.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-192 192C240.4 412.9 232.2 416 224 416z"/></svg>
3187							</span>
3188						</span>
3189				</summary>
3190				<div class="cmplz-description">
3191					<span class="cmplz-description-statistics">The technical storage or access that is used exclusively for statistical purposes.</span>
3192					<span class="cmplz-description-statistics-anonymous">The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.</span>
3193				</div>
3194			</details>
3195			<details class="cmplz-category cmplz-marketing" >
3196				<summary>
3197						<span class="cmplz-category-header">
3198							<span class="cmplz-category-title">Marketing</span>
3199							<span class="cmplz-banner-checkbox">
3200								<input type="checkbox"
3201									   id="cmplz-marketing-optin"
3202									   data-category="cmplz_marketing"
3203									   class="cmplz-consent-checkbox cmplz-marketing"
3204									   size="40"
3205									   value="1"/>
3206								<label class="cmplz-label" for="cmplz-marketing-optin" tabindex="0"><span class="screen-reader-text">Marketing</span></label>
3207							</span>
3208							<span class="cmplz-icon cmplz-open">
3209								<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"  height="18" ><path d="M224 416c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L224 338.8l169.4-169.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-192 192C240.4 412.9 232.2 416 224 416z"/></svg>
3210							</span>
3211						</span>
3212				</summary>
3213				<div class="cmplz-description">
3214					<span class="cmplz-description-marketing">The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.</span>
3215				</div>
3216			</details>
3217		</div><!-- categories end -->
3218			</div>
3219
3220	<div class="cmplz-links cmplz-information">
3221		<a class="cmplz-link cmplz-manage-options cookie-statement" href="#" data-relative_url="#cmplz-manage-consent-container">Manage options</a>
3222		<a class="cmplz-link cmplz-manage-third-parties cookie-statement" href="#" data-relative_url="#cmplz-cookies-overview">Manage services</a>
3223		<a class="cmplz-link cmplz-manage-vendors tcf cookie-statement" href="#" data-relative_url="#cmplz-tcf-wrapper">Manage {vendor_count} vendors</a>
3224		<a class="cmplz-link cmplz-external cmplz-read-more-purposes tcf" target="_blank" rel="noopener noreferrer nofollow" href="https://cookiedatabase.org/tcf/purposes/">Read more about these purposes</a>
3225			</div>
3226
3227	<div class="cmplz-divider cmplz-footer"></div>
3228
3229	<div class="cmplz-buttons">
3230		<button class="cmplz-btn cmplz-accept">Accept</button>
3231		<button class="cmplz-btn cmplz-deny">Deny</button>
3232		<button class="cmplz-btn cmplz-view-preferences">View preferences</button>
3233		<button class="cmplz-btn cmplz-save-preferences">Save preferences</button>
3234		<a class="cmplz-btn cmplz-manage-options tcf cookie-statement" href="#" data-relative_url="#cmplz-manage-consent-container">View preferences</a>
3235			</div>
3236
3237	<div class="cmplz-links cmplz-documents">
3238		<a class="cmplz-link cookie-statement" href="#" data-relative_url="">{title}</a>
3239		<a class="cmplz-link privacy-statement" href="#" data-relative_url="">{title}</a>
3240		<a class="cmplz-link impressum" href="#" data-relative_url="">{title}</a>
3241			</div>
3242
3243</div>
3244</div>
3245					<div id="cmplz-manage-consent" data-nosnippet="true"><button class="cmplz-btn cmplz-hidden cmplz-manage-consent manage-consent-1">
3245Manage consent</button>
3246
3247</div><div  class="wppopups-whole" style="display: none"></div><link rel='stylesheet' id='contact-form-7-css' href='https://www.shootinguk.co.uk/app/plugins/contact-form-7/includes/css/styles.css?ver=6.1.7' media='all' />
3248<script src="https://gundog-journal.com/wp-includes/js/dist/hooks.min.js?ver=4d63a3d491d11ffd8ac6" id="wp-hooks-js"></script>
vendor: 1 bytes, line 3248
3248
3249<script id="wppopups-js-extra">
3250var wppopups_vars = {"is_admin":"","ajax_url":"https:\/\/gundog-journal.com\/wp-admin\/admin-ajax.php","pid":"197","is_front_page":"","is_blog_page":"","is_category":"","site_url":"https:\/\/gundog-journal.com","is_archive":"","is_search":"","is_singular":"1","is_preview":"","facebook":"","twitter":"","val_required":"This field is required.","val_url":"Please enter a valid URL.","val_email":"Please enter a valid email address.","val_number":"Please enter a valid number.","val_checklimit":"You have exceeded the number of allowed selections: {#}.","val_limit_characters":"{count} of {limit} max characters.","val_limit_words":"{count} of {limit} max words.","disable_form_reopen":"__return_false"};
3251</script>
vendor: 1 bytes, line 3251
3251
3252<script src="https://www.shootinguk.co.uk/app/plugins/wp-popups-lite/src/assets/js/wppopups.js?ver=2.2.0.2" id="wppopups-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3252
3252
3253<script id="adrotate-clicker-js-extra">
3254var click_object = {"ajax_url":"https:\/\/gundog-journal.com\/wp-admin\/admin-ajax.php"};
3255</script>
vendor: 1 bytes, line 3255
3255
3256<script src="https://www.shootinguk.co.uk/app/plugins/adrotate/library/jquery.clicker.js" id="adrotate-clicker-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3256
3256
3257<script src="https://gundog-journal.com/wp-includes/js/jquery/ui/core.min.js?ver=1.13.3" id="jquery-ui-core-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3257
3257
3258<script src="https://gundog-journal.com/wp-includes/js/jquery/ui/datepicker.min.js?ver=1.13.3" id="jquery-ui-datepicker-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3258
3258
3259<script id="jquery-ui-datepicker-js-after">window.addEventListener('DOMContentLoaded', function() {
3260jQuery(function(jQuery){jQuery.datepicker.setDefaults({"closeText":"Close","currentText":"Today","monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"nextText":"Next","prevText":"Previous","dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"dateFormat":"d MM yy","firstDay":1,"isRTL":false});});
3261});</script>
vendor: 1 bytes, line 3261
3261
3262<script id="rocket-browser-checker-js-after">
3263"use strict";var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){return protoProps&&defineProperties(Constructor.prototype,protoProps),staticProps&&defineProperties(Constructor,staticProps),Constructor}}();function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}var RocketBrowserCompatibilityChecker=function(){function RocketBrowserCompatibilityChecker(options){_classCallCheck(this,RocketBrowserCompatibilityChecker),this.passiveSupported=!1,this._checkPassiveOption(this),this.options=!!this.passiveSupported&&options}return _createClass(RocketBrowserCompatibilityChecker,[{key:"_checkPassiveOption",value:function(self){try{var options={get passive(){return!(self.passiveSupported=!0)}};window.addEventListener("test",null,options),window.removeEventListener("test",null,options)}catch(err){self.passiveSupported=!1}}},{key:"initRequestIdleCallback",value:function(){!1 in window&&(window.requestIdleCallback=function(cb){var start=Date.now();return setTimeout(function(){cb({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-start))}})},1)}),!1 in window&&(window.cancelIdleCallback=function(id){return clearTimeout(id)})}},{key:"isDataSaverModeOn",value:function(){return"connection"in navigator&&!0===navigator.connection.saveData}},{key:"supportsLinkPrefetch",value:function(){var elem=document.createElement("link");return elem.relList&&elem.relList.supports&&elem.relList.supports("prefetch")&&window.IntersectionObserver&&"isIntersecting"in IntersectionObserverEntry.prototype}},{key:"isSlowConnection",value:function(){return"connection"in navigator&&"effectiveType"in navigator.connection&&("2g"===navigator.connection.effectiveType||"slow-2g"===navigator.connection.effectiveType)}}]),RocketBrowserCompatibilityChecker}();
3264</script>
vendor: 1 bytes, line 3264
3264
3265<script id="rocket-preload-links-js-extra">
3266var RocketPreloadLinksConfig = {"excludeUris":"\/(?:.+\/)?feed(?:\/(?:.+\/?)?)?$|\/(?:.+\/)?embed\/|http:\/\/(\/%5B\/%5D+)?\/(index.php\/)?(.*)wp-json(\/.*|$)|\/refer\/|\/go\/|\/recommend\/|\/recommends\/","usesTrailingSlash":"1","imageExt":"jpg|jpeg|gif|png|tiff|bmp|webp|avif|pdf|doc|docx|xls|xlsx|php","fileExt":"jpg|jpeg|gif|png|tiff|bmp|webp|avif|pdf|doc|docx|xls|xlsx|php|html|htm","siteUrl":"https:\/\/gundog-journal.com","onHoverDelay":"100","rateThrottle":"3"};
3267</script>
vendor: 1 bytes, line 3267
3267
3268<script id="rocket-preload-links-js-after">
3269(function() {
3270"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e=function(){function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e}}();function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var t=function(){function n(e,t){i(this,n),this.browser=e,this.config=t,this.options=this.browser.options,this.prefetched=new Set,this.eventTime=null,this.threshold=1111,this.numOnHover=0}return e(n,[{key:"init",value:function(){!this.browser.supportsLinkPrefetch()||this.browser.isDataSaverModeOn()||this.browser.isSlowConnection()||(this.regex={excludeUris:RegExp(this.config.excludeUris,"i"),images:RegExp(".("+this.config.imageExt+")$","i"),fileExt:RegExp(".("+this.config.fileExt+")$","i")},this._initListeners(this))}},{key:"_initListeners",value:function(e){-1<this.config.onHoverDelay&&document.addEventListener("mouseover",e.listener.bind(e),e.listenerOptions),document.addEventListener("mousedown",e.listener.bind(e),e.listenerOptions),document.addEventListener("touchstart",e.listener.bind(e),e.listenerOptions)}},{key:"listener",value:function(e){var t=e.target.closest("a"),n=this._prepareUrl(t);if(null!==n)switch(e.type){case"mousedown":case"touchstart":this._addPrefetchLink(n);break;case"mouseover":this._earlyPrefetch(t,n,"mouseout")}}},{key:"_earlyPrefetch",value:function(t,e,n){var i=this,r=setTimeout(function(){if(r=null,0===i.numOnHover)setTimeout(function(){return i.numOnHover=0},1e3);else if(i.numOnHover>i.config.rateThrottle)return;i.numOnHover++,i._addPrefetchLink(e)},this.config.onHoverDelay);t.addEventListener(n,function e(){t.removeEventListener(n,e,{passive:!0}),null!==r&&(clearTimeout(r),r=null)},{passive:!0})}},{key:"_addPrefetchLink",value:function(i){return this.prefetched.add(i.href),new Promise(function(e,t){var n=document.createElement("link");n.rel="prefetch",n.href=i.href,n.onload=e,n.onerror=t,document.head.appendChild(n)}).catch(function(){})}},{key:"_prepareUrl",value:function(e){if(null===e||"object"!==(void 0===e?"undefined":r(e))||!1 in e||-1===["http:","https:"].indexOf(e.protocol))return null;var t=e.href.substring(0,this.config.siteUrl.length),n=this._getPathname(e.href,t),i={original:e.href,protocol:e.protocol,origin:t,pathname:n,href:t+n};return this._isLinkOk(i)?i:null}},{key:"_getPathname",value:function(e,t){var n=t?e.substring(this.config.siteUrl.length):e;return n.startsWith("/")||(n="/"+n),this._shouldAddTrailingSlash(n)?n+"/":n}},{key:"_shouldAddTrailingSlash",value:function(e){return this.config.usesTrailingSlash&&!e.endsWith("/")&&!this.regex.fileExt.test(e)}},{key:"_isLinkOk",value:function(e){return null!==e&&"object"===(void 0===e?"undefined":r(e))&&(!this.prefetched.has(e.href)&&e.origin===this.config.siteUrl&&-1===e.href.indexOf("?")&&-1===e.href.indexOf("#")&&!this.regex.excludeUris.test(e.href)&&!this.regex.images.test(e.href))}}],[{key:"run",value:function(){"undefined"!=typeof RocketPreloadLinksConfig&&new n(new RocketBrowserCompatibilityChecker({capture:!0,passive:!0}),RocketPreloadLinksConfig).init()}}]),n}();t.run();
3271}());
3272</script>
vendor: 1 bytes, line 3272
3272
3273<script id="rocket_lazyload_css-js-extra">
3274var rocket_lazyload_css_data = {"threshold":"300"};
3275</script>
vendor: 1 bytes, line 3275
3275
3276<script id="rocket_lazyload_css-js-after">
3277!function o(n,c,a){function u(t,e){if(!c[t]){if(!n[t]){var r="function"==typeof require&&require;if(!e&&r)return r(t,!0);if(s)return s(t,!0);throw(e=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",e}r=c[t]={exports:{}},n[t][0].call(r.exports,function(e){return u(n[t][1][e]||e)},r,r.exports,o,n,c,a)}return c[t].exports}for(var s="function"==typeof require&&require,e=0;e<a.length;e++)u(a[e]);return u}({1:[function(e,t,r){"use strict";{const c="undefined"==typeof rocket_pairs?[]:rocket_pairs,a=(("undefined"==typeof rocket_excluded_pairs?[]:rocket_excluded_pairs).map(t=>{var e=t.selector;document.querySelectorAll(e).forEach(e=>{e.setAttribute("data-rocket-lazy-bg-"+t.hash,"excluded")})}),document.querySelector("#wpr-lazyload-bg-container"));var o=rocket_lazyload_css_data.threshold||300;const u=new IntersectionObserver(e=>{e.forEach(t=>{t.isIntersecting&&c.filter(e=>t.target.matches(e.selector)).map(t=>{var e;t&&((e=document.createElement("style")).textContent=t.style,a.insertAdjacentElement("afterend",e),t.elements.forEach(e=>{u.unobserve(e),e.setAttribute("data-rocket-lazy-bg-"+t.hash,"loaded")}))})})},{rootMargin:o+"px"});function n(){0<(0<arguments.length&&void 0!==arguments[0]?arguments[0]:[]).length&&c.forEach(t=>{try{document.querySelectorAll(t.selector).forEach(e=>{"loaded"!==e.getAttribute("data-rocket-lazy-bg-"+t.hash)&&"excluded"!==e.getAttribute("data-rocket-lazy-bg-"+t.hash)&&(u.observe(e),(t.elements||=[]).push(e))})}catch(e){console.error(e)}})}n(),function(){const r=window.MutationObserver;return function(e,t){if(e&&1===e.nodeType)return(t=new r(t)).observe(e,{attributes:!0,childList:!0,subtree:!0}),t}}()(document.querySelector("body"),n)}},{}]},{},[1]);
3278</script>
vendor: 1 bytes, line 3278
3278
3279<script src="https://www.shootinguk.co.uk/app/themes/roots-sage/resources/scripts/flowbite/flowbite.min.js" id="flowbite-js-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3279
3279
3280<script src="https://www.shootinguk.co.uk/app/themes/roots-sage/resources/scripts/swiper/swiper.min.js" id="swiper-js-js" data-rocket-defer defer></script>
vendor: 61 bytes, lines 3280-3281
3280
3281<script src="https://www.google.com/recaptcha/api.js?render=
32816Lc7EbYqAAAAACJ8DDnekgslgYuG9sBDDTmYgbWv
vendor: 49 bytes, line 3281
3281&amp;ver=3.0" id="google-recaptcha-js"></script>
3282<script src="https://gundog-journal.com/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0" id="wp-polyfill-js"></script>
vendor: 1 bytes, line 3282
3282
3283<script id="wpcf7-recaptcha-js-before">
3284var wpcf7_recaptcha = {
3285    "sitekey": "6Lc7EbYqAAAAACJ8DDnekgslgYuG9sBDDTmYgbWv",
3286    "actions": {
3287        "homepage": "homepage",
3288        "contactform": "contactform"
3289    }
3290};
3291</script>
vendor: 1 bytes, line 3291
3291
3292<script src="https://www.shootinguk.co.uk/app/plugins/contact-form-7/modules/recaptcha/index.js?ver=6.1.7" id="wpcf7-recaptcha-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3292
3292
3293<script id="app/0-js-before">
3294(()=>{"use strict";var e,r={},o={};function t(e){var n=o[e];if(void 0!==n)return n.exports;var a=o[e]={exports:{}};return r[e](a,a.exports,t),a.exports}t.m=r,e=[],t.O=(r,o,n,a)=>{if(!o){var i=1/0;for(u=0;u<e.length;u++){o=e[u][0],n=e[u][1],a=e[u][2];for(var l=!0,s=0;s<o.length;s++)(!1&a||i>=a)&&Object.keys(t.O).every((e=>t.O[e](o[s])))?o.splice(s--,1):(l=!1,a<i&&(i=a));if(l){e.splice(u--,1);var f=n();void 0!==f&&(r=f)}}return r}a=a||0;for(var u=e.length;u>0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[o,n,a]},t.d=(e,r)=>{for(var o in r)t.o(r,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={666:0};t.O.j=r=>0===e[r];var r=(r,o)=>{var n,a,i=o[0],l=o[1],s=o[2],f=0;if(i.some((r=>0!==e[r]))){for(n in l)t.o(l,n)&&(t.m[n]=l[n]);if(s)var u=s(t)}for(r&&r(o);f<i.length;f++)a=i[f],t.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return t.O(u)},o=self.webpackChunk_roots_bud_sage_sage=self.webpackChunk_roots_bud_sage_sage||[];o.forEach(r.bind(null,0)),o.push=r.bind(null,o.push.bind(o))})()})();
3295</script>
vendor: 1 bytes, line 3295
3295
3296<script src="https://www.shootinguk.co.uk/app/themes/roots-sage/public/js/app.e60c8c.js" id="app/0-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3296
3296
3297<script src="https://gundog-journal.com/wp-includes/js/hoverIntent.min.js?ver=1.10.2" id="hoverIntent-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3297
3297
3298<script src="https://www.shootinguk.co.uk/app/plugins/megamenu/js/maxmegamenu.js?ver=3.4.1" id="megamenu-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3298
3298
3299<script id="cmplz-cookiebanner-js-extra">
3300var complianz = {"prefix":"cmplz_","user_banner_id":"1","set_cookies":[],"block_ajax_content":"","banner_version":"30","version":"7.3.0","store_consent":"","do_not_track_enabled":"1","consenttype":"optin","region":"uk","geoip":"","dismiss_timeout":"","disable_cookiebanner":"1","soft_cookiewall":"1","dismiss_on_scroll":"","cookie_expiry":"365","url":"https:\/\/gundog-journal.com\/wp-json\/complianz\/v1\/","locale":"lang=en&locale=en_US","set_cookies_on_root":"","cookie_domain":"","current_policy_id":"35","cookie_path":"\/","categories":{"statistics":"statistics","marketing":"marketing"},"tcf_active":"","placeholdertext":"Click to accept {category} cookies and enable this content","css_file":"https:\/\/www.shootinguk.co.uk\/app\/uploads\/sites\/2\/complianz\/css\/banner-{banner_id}-{type}.css?v=30","page_links":{"uk":{"cookie-statement":{"title":"Cookie Policy","url":"https:\/\/gundog-journal.com\/cookie-policy\/"},"privacy-statement":{"title":"Privacy policy","url":"https:\/\/gundog-journal.com\/privacy-policy\/"}}},"tm_categories":"1","forceEnableStats":"","preview":"","clean_cookies":"","aria_label":"Click to accept {category} cookies and enable this content"};
3301</script>
vendor: 1 bytes, line 3301
3301
3302<script defer src="https://www.shootinguk.co.uk/app/plugins/complianz-gdpr/cookiebanner/js/complianz.min.js?ver=1739374094" id="cmplz-cookiebanner-js"></script>
vendor: 1 bytes, line 3302
3302
3303<script id="cmplz-cookiebanner-js-after">
3304document.addEventListener("cmplz_enable_category", function () {
3305                document.querySelectorAll('[data-rocket-lazyload]').forEach(obj => {
3306                    if (obj.hasAttribute('data-lazy-src')) {
3307                        obj.setAttribute('src', obj.getAttribute('data-lazy-src'));
3308                    }
3309                });
3310            });
3311        
3312		
3313</script>
vendor: 1 bytes, line 3313
3313
3314<script src="https://gundog-journal.com/wp-includes/js/dist/i18n.min.js?ver=5e580eb46a90c2b997e6" id="wp-i18n-js"></script>
vendor: 1 bytes, line 3314
3314
3315<script id="wp-i18n-js-after">
3316wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } );
3317</script>
vendor: 1 bytes, line 3317
3317
3318<script src="https://www.shootinguk.co.uk/app/plugins/contact-form-7/includes/swv/js/index.js?ver=6.1.7" id="swv-js" data-rocket-defer defer></script>
vendor: 1 bytes, line 3318
3318
3319<script id="contact-form-7-js-before">
3320var wpcf7 = {
3321    "api": {
3322        "root": "https:\/\/gundog-journal.com\/wp-json\/",
3323        "namespace": "contact-form-7\/v1"
3324    },
3325    "cached": 1
3326};
3327</script>
vendor: 1 bytes, line 3327
3327
3328<script src="https://www.shootinguk.co.uk/app/plugins/contact-form-7/includes/js/index.js?ver=6.1.7" id="contact-form-7-js" data-rocket-defer defer></script>
3328
3329<!-- Statistics script Complianz GDPR/CCPA -->
3330						
3330<script data-category="functional">
vendor: 339 bytes, lines 3330-3335
3330
3331							(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
3332		new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
3333	j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
3334	'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
3335})(window,document,'script','dataLayer','
3335GTM-KZ46D2PN
vendor: 10 bytes, lines 3335-3336
3335');
3336						
3336</script>
3336<script id="tws-crossword-deadline" data-no-optimize="1" data-no-defer="1" data-no-minify="1" data-cfasync="false">
3337(function () {
3338	var TZ      = "Europe\/London";
3339	var CLASS   = "tws-crossword-deadline";
3340	var EVERY   = 28;
3341	var DEFAULT = "j F, Y";
3342
3343	var DAY    = 86400000;
3344	var DAYS   = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
3345	var MONTHS = ['January','February','March','April','May','June','July','August',
3346	              'September','October','November','December'];
3347
3348	// All arithmetic is done on whole UTC days. Local midnights either side of a clock
3349	// change are not exactly 24 hours apart, which would round a long cycle the wrong way.
3350	function todayAtSite() {
3351		var now = new Date();
3352		try {
3353			var p = new Intl.DateTimeFormat('en-GB', {
3354				timeZone: TZ, year: 'numeric', month: '2-digit', day: '2-digit'
3355			}).formatToParts(now).reduce(function (acc, x) { acc[x.type] = x.value; return acc; }, {});
3356			return Date.UTC(+p.year, +p.month - 1, +p.day);
3357		} catch (e) {
3358			// Timezone unsupported or invalid: fall back to the visitor's own clock.
3359			return Date.UTC(now.getFullYear(), now.getMonth(), now.getDate());
3360		}
3361	}
3362
3363	// Rejects anything that is not a real calendar date, so 2026-02-31 is refused here just
3364	// as it is in PHP rather than silently rolling over into March.
3365	function parseStart(s) {
3366		var m = /^(\d{4})-(\d{2})-(\d{2})$/.exec(String(s || '').replace(/^\s+|\s+$/g, ''));
3367		if (!m) { return null; }
3368		var t = Date.UTC(+m[1], +m[2] - 1, +m[3]);
3369		var d = new Date(t);
3370		if (d.getUTCFullYear() !== +m[1] || d.getUTCMonth() !== +m[2] - 1 || d.getUTCDate() !== +m[3]) {
3371			return null;
3372		}
3373		return t;
3374	}
3375
3376	function deadline(anchor, every, skip) {
3377		var today   = todayAtSite();
3378		var span    = Math.max(1, every) * DAY;
3379		var elapsed = today - anchor;
3380		var cycles  = elapsed > 0 ? Math.ceil(elapsed / span) : 0;
3381
3382		return new Date(anchor + (cycles + skip) * span);
3383	}
3384
3385	function pad(n) { return n < 10 ? '0' + n : '' + n; }
3386
3387	function ordinal(n) {
3388		if (n > 3 && n < 21) { return 'th'; }
3389		switch (n % 10) {
3390			case 1: return 'st';
3391			case 2: return 'nd';
3392			case 3: return 'rd';
3393			default: return 'th';
3394		}
3395	}
3396
3397	// The subset of PHP's date() tokens that makes sense for a plain date.
3398	// A backslash escapes the next character, as it does in PHP.
3399	function format(d, fmt) {
3400		var out = '';
3401		for (var i = 0; i < fmt.length; i++) {
3402			var c = fmt.charAt(i);
3403			if (c === '\\') { out += fmt.charAt(++i) || ''; continue; }
3404			switch (c) {
3405				case 'j': out += d.getUTCDate(); break;
3406				case 'd': out += pad(d.getUTCDate()); break;
3407				case 'S': out += ordinal(d.getUTCDate()); break;
3408				case 'l': out += DAYS[d.getUTCDay()]; break;
3409				case 'D': out += DAYS[d.getUTCDay()].slice(0, 3); break;
3410				case 'N': out += (d.getUTCDay() === 0 ? 7 : d.getUTCDay()); break;
3411				case 'w': out += d.getUTCDay(); break;
3412				case 'F': out += MONTHS[d.getUTCMonth()]; break;
3413				case 'M': out += MONTHS[d.getUTCMonth()].slice(0, 3); break;
3414				case 'n': out += (d.getUTCMonth() + 1); break;
3415				case 'm': out += pad(d.getUTCMonth() + 1); break;
3416				case 'Y': out += d.getUTCFullYear(); break;
3417				case 'y': out += pad(d.getUTCFullYear() % 100); break;
3418				default:  out += c;
3419			}
3420		}
3421		return out;
3422	}
3423
3424	function iso(d) {
3425		return d.getUTCFullYear() + '-' + pad(d.getUTCMonth() + 1) + '-' + pad(d.getUTCDate());
3426	}
3427
3428	function fix(el) {
3429		var anchor = parseStart(el.getAttribute('data-start'));
3430
3431		// No usable start date. PHP has already flagged it to editors; leave it alone.
3432		if (anchor === null) { return; }
3433
3434		var every = parseInt(el.getAttribute('data-every'), 10);
3435		if (isNaN(every) || every < 1) { every = EVERY; }
3436
3437		var skip = parseInt(el.getAttribute('data-skip'), 10);
3438		if (isNaN(skip) || skip < 0) { skip = 0; }
3439
3440		var d    = deadline(anchor, every, skip);
3441		var want = iso(d);
3442
3443		// Leave it alone if PHP already wrote the right date and there is text there.
3444		if (el.getAttribute('data-date') === want && el.textContent.trim() !== '') { return; }
3445
3446		el.textContent = format(d, el.getAttribute('data-format') || DEFAULT);
3447		el.setAttribute('data-date', want);
3448	}
3449
3450	function refresh() {
3451		var nodes = document.querySelectorAll('.' + CLASS);
3452		for (var i = 0; i < nodes.length; i++) { fix(nodes[i]); }
3453	}
3454
3455	if (document.readyState === 'loading') {
3456		document.addEventListener('DOMContentLoaded', refresh);
3457	} else {
3458		refresh();
3459	}
3460
3461	// A page restored from the back/forward cache, or left open overnight and returned to,
3462	// gets a fresh reading rather than yesterday's.
3463	window.addEventListener('pageshow', refresh);
3464	document.addEventListener('visibilitychange', function () {
3465		if (!document.hidden) { refresh(); }
3466	});
3467}());
3468</script>
3468
3469		
3469<script id="tws-comp-js">
3470(function(){
3471  var AJAX = "\/wp-admin\/admin-ajax.php", DELAY = 8000;
3472  var store = {
3473    get: function(k){ try { return window.localStorage.getItem(k); } catch (e) { return null; } },
3474    set: function(k, v){ try { window.localStorage.setItem(k, v); } catch (e) {} }
3475  };
3476  function leftText(closes, now){
3477    if (now > closes) { return 'Closed'; }
3478    var a = new Date(now * 1000), b = new Date(closes * 1000);
3479    a.setHours(0, 0, 0, 0); b.setHours(0, 0, 0, 0);
3480    var d = Math.round((b - a) / 864e5);
3481    if (d <= 0) { return 'Last chance – closes tonight'; }
3482    if (d === 1) { return 'Closes tomorrow'; }
3483    if (d <= 30) { return 'Closes in ' + d + ' days'; }
3484    return null; // leave the server's date text alone
3485  }
3486  function tick(){
3487    var now = Math.floor(Date.now() / 1000);
3488    document.querySelectorAll('[data-tws-comp-closes]').forEach(function(el){
3489      var closes = parseInt(el.getAttribute('data-tws-comp-closes'), 10);
3490      if (!closes) { return; }
3491      if (now > closes) {
3492        if (el.hasAttribute('data-tws-comp-expire')) {
3493          var band = el.closest('[data-tws-comp-band]');
3494          el.remove();
3495          if (band) {
3496            if (!band.querySelector('[data-tws-comp]')) {
3497              var sec = band.closest('.tws-comp-section');
3498              (sec || band).remove();
3499            }
3500          }
3501        }
3502        return;
3503      }
3504      var t = leftText(closes, now);
3505      if (t !== null) {
3506        el.querySelectorAll('[data-tws-comp-left]').forEach(function(s){
3507          s.textContent = s.hasAttribute('data-lower') ? t.charAt(0).toLowerCase() + t.slice(1) : t;
3508        });
3509      }
3510      var dhm = el.querySelector('[data-tws-comp-dhm]');
3511      if (dhm) {
3512        var s = closes - now;
3513        dhm.querySelector('[data-d]').textContent = Math.floor(s / 86400);
3514        dhm.querySelector('[data-h]').textContent = Math.floor(s % 86400 / 3600);
3515        dhm.querySelector('[data-m]').textContent = Math.floor(s % 3600 / 60);
3516      }
3517    });
3518  }
3519  function hit(el){
3520    var id = el.getAttribute('data-tws-comp'), place = el.getAttribute('data-tws-comp-place');
3521    try {
3522      window.dataLayer = window.dataLayer || [];
3523      window.dataLayer.push({ event: 'tws_competition_click', tws_competition: el.getAttribute('data-tws-comp-slug'), tws_placement: place });
3524    } catch (e) {}
3525    try {
3526      var f = new FormData(); f.append('action', 'tws_comp_click'); f.append('c', id); f.append('p', place);
3527      if (navigator.sendBeacon) { navigator.sendBeacon(AJAX, f); }
3528      else { fetch(AJAX, { method: 'POST', body: f, keepalive: true, credentials: 'omit' }); }
3529    } catch (e) {}
3530  }
3531  function seen(el, kind){ store.set('tws_comp_' + kind + '_' + el.getAttribute('data-tws-comp'), String(Date.now())); }
3532  document.addEventListener('click', function(e){
3533    var go = e.target.closest('[data-tws-comp-go]');
3534    if (go) {
3535      var box = go.closest('[data-tws-comp]');
3536      if (box) {
3537        hit(box);
3538        if (box.classList.contains('tws-comp-toast')) { seen(box, 'toast'); }
3539      }
3540    }
3541    var x = e.target.closest('[data-tws-comp-close]');
3542    if (x) {
3543      var b = x.closest('[data-tws-comp]');
3544      if (b) {
3545        seen(b, b.classList.contains('tws-comp-bar') ? 'bar' : 'toast');
3546        b.remove();
3547      }
3548    }
3549  });
3550  document.addEventListener('click', function(e){
3551    var t = e.target.closest('[data-tws-cp-thumb]');
3552    if (!t) { return; }
3553    var hero = t.closest('.tws-cp-hero'), main = hero ? hero.querySelector('[data-tws-cp-main]') : null, small = t.querySelector('img');
3554    if (!main || !small) { return; }
3555    var credit = hero.querySelector('[data-tws-cp-credit]');
3556    var was = { src: main.getAttribute('src'), alt: main.getAttribute('alt'), credit: credit ? credit.textContent : (main.getAttribute('data-credit') || '') };
3557    main.removeAttribute('srcset');
3558    main.setAttribute('src', t.getAttribute('data-full') || small.getAttribute('src'));
3559    main.setAttribute('alt', small.getAttribute('alt') || '');
3560    if (credit) { credit.textContent = t.getAttribute('data-credit') || ''; credit.hidden = !credit.textContent; }
3561    small.setAttribute('src', was.src);
3562    small.setAttribute('alt', was.alt || '');
3563    t.setAttribute('data-full', was.src);
3564    t.setAttribute('data-credit', was.credit);
3565  });
3566  // Side strip arrows: one picture per press; each arrow hides at its end of the strip (1.8.0).
3567  function arrows(side){
3568    var strip = side.querySelector('[data-tws-cp-strip]'), up = side.querySelector('.tws-cp-arrow--up'), down = side.querySelector('.tws-cp-arrow--down');
3569    if (!strip || !up || !down) { return; }
3570    function state(){
3571      up.disabled = strip.scrollTop <= 2;
3572      down.disabled = strip.scrollTop + strip.clientHeight >= strip.scrollHeight - 2;
3573    }
3574    side.addEventListener('click', function(e){
3575      var b = e.target.closest('[data-tws-cp-scroll]');
3576      if (!b) { return; }
3577      var first = strip.querySelector('.tws-cp-thumb');
3578      var step = first ? first.offsetHeight + 6 : strip.clientHeight / 3;
3579      strip.scrollBy({ top: step * parseInt(b.getAttribute('data-tws-cp-scroll'), 10), behavior: 'smooth' });
3580    });
3581    strip.addEventListener('scroll', state, { passive: true });
3582    state();
3583  }
3584  document.querySelectorAll('.tws-cp-side--more').forEach(arrows);
3585  function popups(){
3586    var mobile = window.matchMedia('(max-width: 767px)').matches, barShown = false;
3587    var bar = document.querySelector('.tws-comp-bar');
3588    if (bar) {
3589      var last = parseInt(store.get('tws_comp_bar_' + bar.getAttribute('data-tws-comp')) || '0', 10);
3590      if (mobile) {
3591        if (Date.now() - last > 864e5) { bar.hidden = false; barShown = true; }
3592      }
3593    }
3594    if (mobile) {
3595      if (barShown) { return; } // one thing at a time on a phone
3596    }
3597    var toasts = document.querySelectorAll('.tws-comp-toast'), pick = null;
3598    for (var i = 0; i < toasts.length; i++) {
3599      if (!store.get('tws_comp_toast_' + toasts[i].getAttribute('data-tws-comp'))) { pick = toasts[i]; break; }
3600    }
3601    if (!pick) { return; }
3602    setTimeout(function(){
3603      if (!document.body.contains(pick)) { return; }
3604      pick.hidden = false;
3605      seen(pick, 'toast');
3606      requestAnimationFrame(function(){ pick.classList.add('is-in'); });
3607    }, DELAY);
3608  }
3609  function go(){ tick(); popups(); setInterval(tick, 30000); }
3610  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', go); } else { go(); }
3611})();
3612</script>
3612
3613    
3613<script id="tws-comp-closed-js">
3614(function(){
3615  var MARK = '\u2060', WORD = 'Closed:';
3616  function run(){
3617    if (!document.body) { return; }
3618    var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, null), hits = [], n;
3619    while ((n = walker.nextNode())) {
3620      if (n.nodeValue.indexOf(MARK + WORD) !== -1) { hits.push(n); }
3621    }
3622    hits.forEach(function(node){
3623      var p = node.nodeValue.indexOf(MARK + WORD);
3624      var before = node.nodeValue.slice(0, p), after = node.nodeValue.slice(p + MARK.length + WORD.length);
3625      var span = document.createElement('span');
3626      span.className = 'tws-comp-closed';
3627      span.textContent = WORD;
3628      var frag = document.createDocumentFragment();
3629      if (before) { frag.appendChild(document.createTextNode(before)); }
3630      frag.appendChild(span);
3631      frag.appendChild(document.createTextNode(after));
3632      node.parentNode.replaceChild(frag, node);
3633    });
3634  }
3635  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); }
3636})();
3637</script>
3637
3638    <div  class="tws-mp-source" hidden aria-hidden="true" data-tws-mobile-panel>
3639
3640    <div  class="tws-mp-head" data-tws-mp-block="head">
3641                <button type="button" class="tws-mp-close" data-tws-mp-close>
3642            <span class="screen-reader-text">Close menu</span>
3643            <svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"
3644                 fill="none" stroke="currentColor" stroke-width="2.6" stroke-linecap="round">
3645                <path d="M5 5 19 19M19 5 5 19"/>
3646            </svg>
3647        </button>
3648
3649                                            <img width="261" height="73" class="tws-mp-logo no-lazy skip-lazy"
3650                 data-no-lazy="1"
3651                 loading="eager"
3652                 fetchpriority="high"
3653                 src="/app/uploads/sites/2/2024/11/shootinguklogo-160-1.png"
3654                 alt="Gundog Journal">
3655            </div>
3656
3657    <form class="tws-mp-search" data-tws-mp-block="search" role="search" method="get"
3658          action="https://gundog-journal.com/search/">
3659        <svg class="tws-mp-mag" viewBox="0 0 24 24" fill="none" stroke="currentColor"
3660             stroke-width="2.2" aria-hidden="true" focusable="false">
3661            <circle cx="10.5" cy="10.5" r="6.5"/><path d="M15.5 15.5 21 21"/>
3662        </svg>
3663        <label class="screen-reader-text" for="tws-mp-q">Search</label>
3664        <input type="search" name="_sf_s" id="tws-mp-q" autocomplete="off"
3665               placeholder="Search Gundog Journal…">
3666        <button type="submit" class="tws-mp-go">GO</button>
3667    </form>
3668
3669    <div  class="tws-mp-foot" data-tws-mp-block="foot">
3670                    <a class="tws-mp-subscribe" href="https://shop.twsgroup.com/subscribe/gundog-journal">
3671                Subscribe to Gundog Journal                                    <small>Print &amp; digital · TWS Shop</small>
3672                            </a>
3673        
3674                    <p class="tws-mp-follow">Follow us</p>
3675            <div  class="tws-mp-socials"><a class="tws-mp-social" href="https://www.facebook.com/GundogJournal/" target="_blank" rel="noopener noreferrer"><span class="screen-reader-text">Facebook</span><svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M13.5 22v-9h3l.45-3.5H13.5V7.25c0-1 .28-1.7 1.72-1.7h1.84V2.42A24.6 24.6 0 0 0 14.37 2.3c-2.66 0-4.48 1.62-4.48 4.6V9.5H7v3.5h2.89V22h3.61z"/></svg></a><a class="tws-mp-social" href="https://www.instagram.com/gundogjournal/" target="_blank" rel="noopener noreferrer"><span class="screen-reader-text">Instagram</span><svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M12 2.16c3.2 0 3.58.01 4.85.07 3.25.15 4.77 1.69 4.92 4.92.06 1.27.07 1.65.07 4.85s-.01 3.58-.07 4.85c-.15 3.23-1.66 4.77-4.92 4.92-1.27.06-1.65.07-4.85.07s-3.58-.01-4.85-.07c-3.26-.15-4.77-1.7-4.92-4.92-.06-1.27-.07-1.65-.07-4.85s.01-3.58.07-4.85C2.38 3.92 3.9 2.38 7.15 2.23 8.42 2.17 8.8 2.16 12 2.16zm0 5.68a4.16 4.16 0 1 0 0 8.32 4.16 4.16 0 0 0 0-8.32zm0 6.86a2.7 2.7 0 1 1 0-5.4 2.7 2.7 0 0 1 0 5.4zm5.27-7.03a.97.97 0 1 1-1.94 0 .97.97 0 0 1 1.94 0z"/></svg></a></div>
3676            </div>
3677
3678</div>
3679    <style id="tws-new-article-toast-css">
3680.tws-toast {
3681	/* Accent comes from the Primary colour on Theme Settings; the two font variables are
3682	   overwritten at runtime with whatever this site's own stylesheets resolve to, so nothing
3683	   here needs a per-site rule. The values below are only what is used before that happens,
3684	   or if font matching is switched off. */
3685	--tws-toast-accent: #b38750;
3686	--tws-toast-heading: Georgia, 'Times New Roman', serif;
3687	--tws-toast-body: Helvetica, Arial, sans-serif;
3688
3689	position: fixed;
3690	top: calc(var(--tws-header-h, 126px) + 16px);
3691	right: 20px;
3692	width: 380px;
3693	max-width: calc(100vw - 32px);
3694	z-index: 99998; /* above the fixed header (9999), below the sticky ad (99999) */
3695	background: #fff;
3696	border-top: 3px solid var(--tws-toast-accent);
3697	border-radius: 4px;
3698	box-shadow: 0 6px 28px rgba(0,0,0,.22), 0 1px 3px rgba(0,0,0,.12);
3699	overflow: hidden;
3700	animation: tws-toast-in .38s cubic-bezier(.16,.84,.44,1) both;
3701}
3702.tws-toast[hidden] { display: none; }
3703.tws-toast * { box-sizing: border-box; }
3704.tws-toast__inner {
3705	display: flex;
3706	gap: 12px;
3707	align-items: flex-start;
3708	padding: 12px 12px 12px 14px;
3709	text-decoration: none;
3710	color: inherit;
3711}
3712.tws-toast__inner:hover, .tws-toast__inner:focus { text-decoration: none; }
3713.tws-toast__thumb {
3714	display: block;
3715	flex: 0 0 84px;
3716	width: 84px;
3717	height: 84px;
3718	border-radius: 3px;
3719	overflow: hidden;
3720	background: #ededed;
3721}
3722/* Imagify is set to "Use <picture> tags", which rewraps images and moves the class and style
3723   onto the <picture>, leaving the <img> bare. Size the container and force both. CLAUDE.md 5.5. */
3724.tws-toast__thumb picture,
3725.tws-toast__thumb img {
3726	display: block !important;
3727	width: 100% !important;
3728	height: 100% !important;
3729	object-fit: cover;
3730	margin: 0 !important;
3731	max-width: none !important;
3732}
3733.tws-toast__body { display: block; flex: 1 1 auto; min-width: 0; }
3734.tws-toast__eyebrow {
3735	display: inline-block;
3736	margin: 0 0 5px;
3737	font-family: var(--tws-toast-body);
3738	font-size: 10px;
3739	font-weight: 700;
3740	line-height: 1;
3741	letter-spacing: .09em;
3742	text-transform: uppercase;
3743	color: var(--tws-toast-accent);
3744}
3745.tws-toast__title {
3746	display: -webkit-box;
3747	-webkit-line-clamp: 3;
3748	-webkit-box-orient: vertical;
3749	overflow: hidden;
3750	margin: 0 0 6px;
3751	font-family: var(--tws-toast-heading);
3752	font-size: 15px;
3753	font-weight: 700;
3754	line-height: 1.34;
3755	color: #231F20;
3756}
3757.tws-toast__meta {
3758	display: block;
3759	margin: 0;
3760	font-family: var(--tws-toast-body);
3761	font-size: 11px;
3762	line-height: 1.2;
3763	color: #6b6b6b;
3764}
3765.tws-toast__meta b { color: #231F20; font-weight: 600; }
3766.tws-toast__close {
3767	position: absolute;
3768	top: 6px;
3769	right: 6px;
3770	width: 26px;
3771	height: 26px;
3772	padding: 0;
3773	border: 0;
3774	border-radius: 50%;
3775	background: rgba(255,255,255,.88);
3776	color: #6b6b6b;
3777	font: 700 17px/24px var(--tws-toast-body);
3778	cursor: pointer;
3779}
3780.tws-toast__close:hover, .tws-toast__close:focus { background: #f0f0f0; color: #231F20; }
3781@keyframes tws-toast-in {
3782	from { opacity: 0; transform: translateX(24px); }
3783	to   { opacity: 1; transform: none; }
3784}
3785@keyframes tws-toast-out {
3786	from { opacity: 1; transform: none; }
3787	to   { opacity: 0; transform: translateX(24px); }
3788}
3789/* Slides back out the way it came in, whether that was the timer, the close button or Escape. */
3790.tws-toast.tws-toast--leaving {
3791	animation: tws-toast-out .32s cubic-bezier(.4,0,.7,.2) both;
3792	pointer-events: none;
3793}
3794@media (prefers-reduced-motion: reduce) {
3795	.tws-toast, .tws-toast.tws-toast--leaving { animation: none; }
3796}
3797@media (max-width: 1023px) {
3798	.tws-toast {
3799		top: calc(var(--tws-header-h, 152px) + 10px);
3800		right: 10px;
3801		left: 10px;
3802		width: auto;
3803		max-width: none;
3804	}
3805}
3806@media print { .tws-toast { display: none !important; } }
3807</style>
3808<script id="tws-new-article-toast-js">
3809(function () {
3810	'use strict';
3811
3812	var CONFIG = {"endpoint":"https:\/\/gundog-journal.com\/wp-json\/tws\/v1\/latest","interval":180000,"max":3,"minGap":60000,"autoHide":5000,"eyebrow":"Just published","matchFonts":1,"test":0};
3813
3814	if (!window.fetch || !window.sessionStorage) { return; }
3815
3816	var KEY_SINCE = 'twsToastSince';
3817	var KEY_SHOWN = 'twsToastShown';
3818	var KEY_SEEN  = 'twsToastSeen';
3819
3820	function store(key, value) {
3821		try { sessionStorage.setItem(key, value); } catch (e) {}
3822	}
3823
3824	function read(key, fallback) {
3825		try {
3826			var v = sessionStorage.getItem(key);
3827			return (v === null) ? fallback : v;
3828		} catch (e) { return fallback; }
3829	}
3830
3831	// The baseline is the moment the reader arrived, held for the whole session, so an
3832	// article published while they were on an earlier page still counts as new.
3833	var KEY_LAST  = 'twsToastLast';
3834
3835	var since = read(KEY_SINCE, '');
3836	if (!since) {
3837		since = new Date().toISOString();
3838		store(KEY_SINCE, since);
3839	}
3840
3841	var shown = parseInt(read(KEY_SHOWN, '0'), 10) || 0;
3842	var seen  = [];
3843	try { seen = JSON.parse(read(KEY_SEEN, '[]')) || []; } catch (e) { seen = []; }
3844
3845	// Test mode is a "show me now" button, so make it behave like one. Everything below
3846	// that suppresses a repeat - the per-visit cap, the seen list and the minimum gap - is
3847	// correct in normal use and was quietly making the test button do nothing at all once
3848	// the newest article had been shown once in that browser session. Clearing the visit
3849	// state here means ?tws_toast_test=1 is also the reliable way to reset a session.
3850	if (CONFIG.test) {
3851		try {
3852			sessionStorage.removeItem(KEY_SHOWN);
3853			sessionStorage.removeItem(KEY_SEEN);
3854			sessionStorage.removeItem(KEY_LAST);
3855		} catch (e) {}
3856		shown = 0;
3857		seen = [];
3858	}
3859
3860	var timer     = null;
3861	var current   = null;
3862	var fonts     = null;
3863	var hideTimer = null;
3864	var leaving   = false;
3865
3866	/**
3867	 * Read the site's own fonts rather than hard-coding them.
3868	 *
3869	 * The per-site stylesheets (shooting-times-fonts.css and the rest) target `#app h2`,
3870	 * `#app p` and so on with !important, so a throwaway element placed inside #app resolves
3871	 * to exactly what that site uses: Merriweather and Open Sans on ShootingUK, Oswald and
3872	 * Jost on Sporting Gun, and so on. Measured once, then thrown away. Body copy is read
3873	 * from a <p> rather than from <body>, because the global rule on body is Proxima Nova,
3874	 * which is not what the sites actually render.
3875	 */
3876	function detectFonts() {
3877		if (fonts) { return fonts; }
3878
3879		var host = document.getElementById('app') || document.body;
3880		var probe = document.createElement('div');
3881
3882		probe.setAttribute('aria-hidden', 'true');
3883		probe.style.cssText = 'position:absolute!important;left:-9999px!important;top:0!important;' +
3884			'width:0!important;height:0!important;overflow:hidden!important;visibility:hidden!important;';
3885		probe.innerHTML = '<h2 class="h2"></h2><p></p>';
3886
3887		host.appendChild(probe);
3888
3889		var heading = '';
3890		var body = '';
3891
3892		try {
3893			heading = getComputedStyle(probe.children[0]).fontFamily || '';
3894			body    = getComputedStyle(probe.children[1]).fontFamily || '';
3895		} catch (e) {}
3896
3897		probe.parentNode.removeChild(probe);
3898
3899		fonts = {
3900			heading: withFallback(heading, "Georgia, 'Times New Roman', serif"),
3901			body: withFallback(body, 'Helvetica, Arial, sans-serif')
3902		};
3903
3904		return fonts;
3905	}
3906
3907	// Append a generic family so the card still reads properly if the site's face fails to
3908	// load, which it does on the six domains with the outstanding cross-origin font problem.
3909	function withFallback(stack, fallback) {
3910		if (!stack) { return fallback; }
3911		return /(serif|sans-serif|monospace|cursive|fantasy|system-ui|ui-\w+)\s*$/i.test(stack)
3912			? stack
3913			: stack + ', ' + fallback;
3914	}
3915
3916	function stop() {
3917		if (timer) { clearTimeout(timer); timer = null; }
3918	}
3919
3920	function ago(iso) {
3921		var mins = Math.round((Date.now() - new Date(iso).getTime()) / 60000);
3922		if (!isFinite(mins) || mins < 1) { return 'just now'; }
3923		if (mins === 1) { return '1 minute ago'; }
3924		if (mins < 60)  { return mins + ' minutes ago'; }
3925		var hrs = Math.round(mins / 60);
3926		return hrs === 1 ? '1 hour ago' : hrs + ' hours ago';
3927	}
3928
3929	function clearHideTimer() {
3930		if (hideTimer) { clearTimeout(hideTimer); hideTimer = null; }
3931	}
3932
3933	// Restarted whenever the pointer leaves the card, so it never disappears out from
3934	// under someone who is reading it or moving the mouse towards it.
3935	function startHideTimer() {
3936		clearHideTimer();
3937		if (CONFIG.autoHide > 0 && current && !leaving) {
3938			hideTimer = setTimeout(dismiss, CONFIG.autoHide);
3939		}
3940	}
3941
3942	function reducedMotion() {
3943		return !!(window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches);
3944	}
3945
3946	// Immediate, no animation. Used when replacing one card with another.
3947	function remove() {
3948		clearHideTimer();
3949		leaving = false;
3950		if (!current) { return; }
3951		if (current.parentNode) { current.parentNode.removeChild(current); }
3952		current = null;
3953		document.removeEventListener('keydown', onKey);
3954	}
3955
3956	function dismiss() {
3957		if (!current || leaving) { return; }
3958
3959		clearHideTimer();
3960
3961		// Someone who has asked for less motion gets no slide, so there is no animationend
3962		// to wait for either.
3963		if (reducedMotion()) { remove(); return; }
3964
3965		leaving = true;
3966
3967		var box  = current;
3968		var done = false;
3969
3970		function finish() {
3971			if (done) { return; }
3972			done = true;
3973			box.removeEventListener('animationend', finish);
3974			remove();
3975		}
3976
3977		box.addEventListener('animationend', finish);
3978		box.classList.add('tws-toast--leaving');
3979
3980		// Belt and braces: animationend does not fire if the tab is backgrounded mid-slide,
3981		// or if the animation is suppressed after the class is added.
3982		setTimeout(finish, 700);
3983	}
3984
3985	function onKey(e) {
3986		if (e.key === 'Escape' || e.key === 'Esc') { dismiss(); }
3987	}
3988
3989	function show(data) {
3990		remove();
3991
3992		var box = document.createElement('div');
3993		box.className = 'tws-toast';
3994		box.setAttribute('role', 'status');
3995		box.setAttribute('aria-live', 'polite');
3996
3997		if (CONFIG.matchFonts) {
3998			var f = detectFonts();
3999			box.style.setProperty('--tws-toast-heading', f.heading);
4000			box.style.setProperty('--tws-toast-body', f.body);
4001		}
4002
4003		var close = document.createElement('button');
4004		close.type = 'button';
4005		close.className = 'tws-toast__close';
4006		close.setAttribute('aria-label', 'Dismiss this notification');
4007		close.innerHTML = '&times;';
4008		close.addEventListener('click', dismiss);
4009
4010		var link = document.createElement('a');
4011		link.className = 'tws-toast__inner';
4012		link.href = data.url;
4013
4014		if (data.thumb) {
4015			var thumb = document.createElement('span');
4016			thumb.className = 'tws-toast__thumb';
4017			var img = document.createElement('img');
4018			img.src = data.thumb;
4019			img.alt = '';
4020			img.loading = 'lazy';
4021			thumb.appendChild(img);
4022			link.appendChild(thumb);
4023		}
4024
4025		var body = document.createElement('span');
4026		body.className = 'tws-toast__body';
4027
4028		var eyebrow = document.createElement('span');
4029		eyebrow.className = 'tws-toast__eyebrow';
4030		eyebrow.textContent = CONFIG.eyebrow;
4031
4032		var title = document.createElement('span');
4033		title.className = 'tws-toast__title';
4034		// textContent, not innerHTML: the title arrives decoded and is never treated as markup.
4035		title.textContent = data.title;
4036
4037		var meta = document.createElement('span');
4038		meta.className = 'tws-toast__meta';
4039		if (data.category) {
4040			var cat = document.createElement('b');
4041			cat.textContent = data.category;
4042			meta.appendChild(cat);
4043			meta.appendChild(document.createTextNode('  ·  '));
4044		}
4045		meta.appendChild(document.createTextNode(ago(data.date_gmt)));
4046
4047		body.appendChild(eyebrow);
4048		body.appendChild(title);
4049		body.appendChild(meta);
4050		link.appendChild(body);
4051
4052		box.appendChild(close);
4053		box.appendChild(link);
4054		document.body.appendChild(box);
4055
4056		current = box;
4057		document.addEventListener('keydown', onKey);
4058
4059		box.addEventListener('mouseenter', clearHideTimer);
4060		box.addEventListener('mouseleave', startHideTimer);
4061		box.addEventListener('focusin', clearHideTimer);
4062		box.addEventListener('focusout', startHideTimer);
4063
4064		startHideTimer();
4065	}
4066
4067	function check() {
4068		if (!CONFIG.test && shown >= CONFIG.max) { stop(); return; }
4069
4070		// Query string is deliberately unique per request: WP Rocket and LiteSpeed both sit in
4071		// front of PHP, and a cached "latest" would be wrong for as long as it lived.
4072		var url = CONFIG.endpoint
4073			+ (CONFIG.endpoint.indexOf('?') === -1 ? '?' : '&')
4074			+ 'since=' + encodeURIComponent(since)
4075			+ '&_=' + Date.now()
4076			+ (CONFIG.test ? '&test=1' : '');
4077
4078		fetch(url, { credentials: 'same-origin', cache: 'no-store' })
4079			.then(function (r) { return r.ok ? r.json() : null; })
4080			.then(function (data) {
4081				if (!data || !data['new'] || !data.url) { return; }
4082				if (!CONFIG.test && seen.indexOf(data.id) !== -1) { return; }
4083
4084				// Now that more than one card can appear in a visit, keep them apart. Without
4085				// this, a card shown just before the reader clicked to another page would be
4086				// followed by a second one seconds later on the next page's load check, which
4087				// reads as rapid-fire rather than as a useful alert. Nothing is marked seen and
4088				// the baseline is not moved, so this article is still eligible on a later poll.
4089				if (!CONFIG.test && CONFIG.minGap > 0) {
4090					var last = parseInt(read(KEY_LAST, '0'), 10) || 0;
4091					if (last && (Date.now() - last) < CONFIG.minGap) { return; }
4092				}
4093
4094				// Nothing is recorded during a test, so testing never leaves the visit in a
4095				// state where the real thing is then suppressed.
4096				if (!CONFIG.test) {
4097					seen.push(data.id);
4098					store(KEY_SEEN, JSON.stringify(seen.slice(-30)));
4099
4100					shown += 1;
4101					store(KEY_SHOWN, String(shown));
4102					store(KEY_LAST, String(Date.now()));
4103
4104					// Move the baseline on so the next poll only looks for something newer still.
4105					if (data.date_gmt) {
4106						since = data.date_gmt;
4107						store(KEY_SINCE, since);
4108					}
4109				}
4110
4111				show(data);
4112
4113				if (!CONFIG.test && shown >= CONFIG.max) { stop(); }
4114			})
4115			.catch(function () { /* a failed poll is not worth telling the reader about */ });
4116	}
4117
4118	function schedule() {
4119		stop();
4120		if (shown >= CONFIG.max) { return; }
4121		timer = setTimeout(function () {
4122			schedule();
4123			if (!document.hidden) { check(); }
4124		}, CONFIG.interval);
4125	}
4126
4127	function start() {
4128		if (CONFIG.test) { check(); }
4129
4130		// Check shortly after load as well as on the interval. The baseline lives in
4131		// sessionStorage and spans the whole visit, so this is the moment that actually
4132		// catches "published since you arrived". Without it a reader who moves to a new
4133		// page every minute resets the timer before it ever reaches the interval, and on a
4134		// news site that means the card may never appear at all. Two seconds keeps it off
4135		// the critical render path.
4136		setTimeout(function () {
4137			if (!document.hidden && shown < CONFIG.max) { check(); }
4138		}, 2000);
4139
4140		schedule();
4141
4142		// Nothing is polled while the tab is in the background; check once on return instead.
4143		document.addEventListener('visibilitychange', function () {
4144			if (!document.hidden && shown < CONFIG.max) { check(); }
4145		});
4146	}
4147
4148	if (document.readyState === 'loading') {
4149		document.addEventListener('DOMContentLoaded', start);
4150	} else {
4151		start();
4152	}
4153}());
4154</script>
4154
4155			
4155<script id="twsnl-sub-js">
4156(function () {
4157	'use strict';
4158
4159	var COMPACT = true;
4160
4161	function ready(fn) {
4162		if (document.readyState !== 'loading') { fn(); }
4163		else { document.addEventListener('DOMContentLoaded', fn); }
4164	}
4165
4166	ready(function () {
4167		var groups = [].slice.call(document.querySelectorAll('[data-twsnl-sub]'));
4168		if (!groups.length) { return; }
4169
4170		var header = document.getElementById('header');
4171
4172		function flagOpen() {
4173			if (!header) { return; }
4174			header.classList.toggle('twsnl-sub-open', groups.some(function (g) {
4175				var dd = g.querySelector('[data-twsnl-sub-dd]');
4176				return dd && !dd.hidden;
4177			}));
4178		}
4179
4180		function close(group) {
4181			var btn = group.querySelector('[data-twsnl-sub-btn]');
4182			var dd = group.querySelector('[data-twsnl-sub-dd]');
4183			if (!btn || !dd || dd.hidden) { return; }
4184			dd.hidden = true;
4185			btn.setAttribute('aria-expanded', 'false');
4186			flagOpen();
4187		}
4188
4189		function open(group) {
4190			var btn = group.querySelector('[data-twsnl-sub-btn]');
4191			var dd = group.querySelector('[data-twsnl-sub-dd]');
4192			if (!btn || !dd) { return; }
4193			dd.hidden = false;
4194			btn.setAttribute('aria-expanded', 'true');
4195			flagOpen();
4196		}
4197
4198		function closeAll(except) {
4199			groups.forEach(function (g) { if (g !== except) { close(g); } });
4200		}
4201
4202		function rows(dd) {
4203			return [].slice.call(dd.querySelectorAll('.twsnl-sub-row')).filter(function (a) {
4204				return a.offsetParent !== null;
4205			});
4206		}
4207
4208		groups.forEach(function (group) {
4209			var btn = group.querySelector('[data-twsnl-sub-btn]');
4210			var dd = group.querySelector('[data-twsnl-sub-dd]');
4211			if (!btn || !dd) { return; }
4212
4213			btn.addEventListener('click', function (e) {
4214				e.preventDefault();
4215				e.stopPropagation();
4216				var wasOpen = dd.hidden === false;
4217				closeAll(group);
4218				if (wasOpen) { close(group); } else { open(group); }
4219			});
4220
4221			btn.addEventListener('keydown', function (e) {
4222				if (e.key !== 'ArrowDown') { return; }
4223				e.preventDefault();
4224				if (dd.hidden) { open(group); }
4225				(rows(dd)[0] || btn).focus();
4226			});
4227
4228			dd.addEventListener('keydown', function (e) {
4229				if (e.key !== 'ArrowDown' && e.key !== 'ArrowUp') { return; }
4230				var items = rows(dd);
4231				var i = items.indexOf(document.activeElement);
4232				if (i === -1) { return; }
4233				e.preventDefault();
4234				var next = e.key === 'ArrowDown' ? i + 1 : i - 1;
4235				if (next < 0) { btn.focus(); return; }
4236				if (next >= items.length) { next = items.length - 1; }
4237				items[next].focus();
4238			});
4239
4240			dd.addEventListener('click', function (e) { e.stopPropagation(); });
4241		});
4242
4243		document.addEventListener('click', function () { closeAll(null); });
4244
4245		document.addEventListener('keydown', function (e) {
4246			if (e.key !== 'Escape' && e.key !== 'Esc') { return; }
4247			groups.forEach(function (g) {
4248				var dd = g.querySelector('[data-twsnl-sub-dd]');
4249				if (dd && !dd.hidden) {
4250					close(g);
4251					var btn = g.querySelector('[data-twsnl-sub-btn]');
4252					if (btn) { btn.focus(); }
4253				}
4254			});
4255		});
4256
4257		if (!COMPACT || !header) { return; }
4258
4259		var compact = false;
4260		var ticking = false;
4261
4262		function measure() {
4263			var y = window.pageYOffset || document.documentElement.scrollTop || 0;
4264			var want = y > 60;
4265			if (want !== compact) {
4266				compact = want;
4267				header.classList.toggle('twsnl-hdr-compact', compact);
4268				// never leave a panel hanging off a row that is rolling away
4269				if (compact) { closeAll(null); }
4270			}
4271			ticking = false;
4272		}
4273
4274		window.addEventListener('scroll', function () {
4275			if (ticking) { return; }
4276			ticking = true;
4277			window.requestAnimationFrame(measure);
4278		}, { passive: true });
4279
4280		measure();
4281	});
4282})();
4283</script>
4283
4284	<div  class="tws-is-dim" aria-hidden="true"></div>
4285<script id="tws-search-and-display-js">
4286(function () {
4287	'use strict';
4288
4289	var CFG = {"index":"https://gundog-journal.com/app/uploads/sites/2/tws-search-and-display/index.json","indexV":"1790919963","results":5,"resultsM":4,"trending":[],"brand":"Gundog Journal","search":"https://gundog-journal.com/search/","logUrl":"/wp-admin/admin-ajax.php?action=tws_log_search","param":"_sf_s","uploads":"https://gundog-journal.com/app/uploads/sites/2/","home":"https://gundog-journal.com/","prefetch":1,"hint":1};
4290	var panels = [].slice.call(document.querySelectorAll('[data-tws-is]'));
4291
4292	if (!panels.length) { return; }
4293
4294	var MONTHS = ['January','February','March','April','May','June','July','August','September','October','November','December'];
4295	var DATA = null;          // { c: categories, a: authors, r: rows }
4296	var HAY = null;           // lowercased "title category author" per row, built once
4297	var loading = null;       // the in-flight fetch, so two panels share one request
4298
4299	// idle | loading | ready | failed. This exists to make failure TERMINAL.
4300	//
4301	// v1.0.0 had no such flag: render() saw a null DATA, called load(), and re-rendered in
4302	// the .then(). When the fetch failed DATA stayed null, so that re-render took the same
4303	// branch and scheduled another one. Promise callbacks are microtasks, and a microtask
4304	// that queues a microtask never yields to the event loop - the tab wedges completely,
4305	// with no chance even to paint. That is the "Page Unresponsive" dialogue, and it fired
4306	// at exactly two characters because that is the first keystroke that looks at the index.
4307	// Once the state is 'failed' nothing calls load() again.
4308	var state = 'idle';
4309
4310	// The index URL is assembled here rather than printed whole into the page, so no complete
4311	// URL for the JSON ever appears in the HTML for a crawler to find. See index_base_url().
4312	var INDEX_URL = CFG.index + (CFG.indexV ? '?v=' + encodeURIComponent(CFG.indexV) : '');
4313
4314	/* ---------- data ---------- */
4315
4316	function fail(why) {
4317		state = 'failed';
4318
4319		if (window.console && console.warn) {
4320			console.warn('[TWS Search & Display] index unavailable (' + why + '): ' + INDEX_URL
4321				+ ' — the panel has fallen back to the full search page. Open that URL directly to see what the server returns.');
4322		}
4323
4324		return null;
4325	}
4326
4327	function load() {
4328		// Terminal states answer immediately and never re-enter the fetch.
4329		if (state === 'ready' || state === 'failed') { return Promise.resolve(DATA); }
4330		if (loading) { return loading; }
4331
4332		state = 'loading';
4333
4334		loading = fetch(INDEX_URL, { credentials: 'same-origin' })
4335			.then(function (r) { return r.ok ? r.json() : fail('HTTP ' + r.status); })
4336			.then(function (json) {
4337				if (!json) { return null; }
4338				if (!json.r || !json.r.length) { return fail('empty index'); }
4339
4340				DATA = json;
4341				HAY = json.r.map(function (row) {
4342					return (row[0] + ' ' + (json.c[row[3]] || '') + ' ' + (json.a[row[4]] || '')).toLowerCase();
4343				});
4344
4345				state = 'ready';
4346
4347				return DATA;
4348			})
4349			.catch(function (e) { return fail(e && e.message ? e.message : 'network or parse error'); });
4350
4351		return loading;
4352	}
4353
4354	/* ---------- searching ---------- */
4355
4356	function search(q, limit) {
4357		if (!DATA || !HAY) { return { total: 0, rows: [] }; }
4358
4359		var words = q.toLowerCase().split(/\s+/).filter(Boolean);
4360		if (!words.length) { return { total: 0, rows: [] }; }
4361
4362		var out = [];
4363		var i, j, ok, hay;
4364
4365		// Rows are already newest first, so an ordinary scan is also a recency sort.
4366		// Scanning all 12,000 rows measures 1-6ms even on a throttled phone, so there is no
4367		// index structure to justify here.
4368		for (i = 0; i < HAY.length; i++) {
4369			hay = HAY[i];
4370			ok = true;
4371
4372			for (j = 0; j < words.length; j++) {
4373				if (hay.indexOf(words[j]) === -1) { ok = false; break; }
4374			}
4375
4376			if (!ok) { continue; }
4377
4378			out.push(i);
4379		}
4380
4381		// NEWEST FIRST, always. This used to rank by where the word fell in the title, which
4382		// could put a three-year-old fly-tying guide above this morning's news for the same
4383		// search - not what a magazine's reader expects from a box that sits in the masthead.
4384		// Field 5 is the date as YYYY-MM-DD, so a plain string compare sorts it correctly,
4385		// and the index is written newest first (and patched back into date order), so this
4386		// is usually confirming an order the scan already produced.
4387		out.sort(function (a, b) {
4388			var da = DATA.r[a][5] || '';
4389			var db = DATA.r[b][5] || '';
4390
4391			if (da === db) { return a - b; }
4392
4393			return da < db ? 1 : -1;
4394		});
4395
4396		// The total is what goes in the "11 matches" line, so it has to be counted before
4397		// the list is cut down to the handful actually shown.
4398		return { total: out.length, rows: out.slice(0, limit).map(function (i) { return row(i); }) };
4399	}
4400
4401	// Three shapes have to work: an absolute URL, a root-relative path (which is what this
4402	// network's WordPress actually returns), and a path relative to the uploads folder. The
4403	// root-relative case is why thumbnails were broken - pasting the uploads base in front
4404	// of a path that already began with /app/uploads produced a doubled URL. Handling it
4405	// here means indexes built before the fix start working without a rebuild.
4406	function thumbUrl(v) {
4407		if (!v) { return ''; }
4408		if (/^https?:\/\//.test(v)) { return v; }
4409		if (v.charAt(0) === '/') { return location.origin + v; }
4410
4411		return CFG.uploads + v;
4412	}
4413
4414	function row(i) {
4415		var r = DATA.r[i];
4416
4417		return {
4418			title: r[0],
4419			url: CFG.home + r[1],
4420			thumb: thumbUrl(r[2]),
4421			cat: DATA.c[r[3]] || '',
4422			author: DATA.a[r[4]] || '',
4423			date: r[5]
4424		};
4425	}
4426
4427	/* ---------- rendering ---------- */
4428
4429	function esc(s) {
4430		return String(s).replace(/[&<>"']/g, function (c) {
4431			return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#39;' }[c];
4432		});
4433	}
4434
4435	// Highlight after escaping, never before, so a title can never inject markup.
4436	function mark(text, q) {
4437		var safe = esc(text);
4438		var words = q.trim().split(/\s+/).filter(Boolean).map(function (w) {
4439			return esc(w).replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
4440		});
4441
4442		if (!words.length) { return safe; }
4443
4444		try {
4445			return safe.replace(new RegExp('(' + words.join('|') + ')', 'gi'), '<mark>$1</mark>');
4446		} catch (e) {
4447			return safe;
4448		}
4449	}
4450
4451	function pretty(iso) {
4452		var p = /^(\d{4})-(\d{2})-(\d{2})/.exec(iso || '');
4453		if (!p) { return ''; }
4454
4455		return parseInt(p[3], 10) + ' ' + MONTHS[parseInt(p[2], 10) - 1] + ' ' + p[1];
4456	}
4457
4458	function resultsWanted() {
4459		return window.matchMedia('(max-width: 1023px)').matches ? CFG.resultsM : CFG.results;
4460	}
4461
4462	function searchUrl(q) {
4463		return CFG.search + '?' + CFG.param + '=' + encodeURIComponent(q);
4464	}
4465
4466	// Tell the search log what was typed when a quick match is opened. That search never
4467	// reaches the results page, so nothing else would count it. sendBeacon survives the
4468	// page unloading and the reader waits for nothing; if it is missing, nothing is sent.
4469	function logPick(q) {
4470		q = String(q || '').trim();
4471		if (!CFG.logUrl || q.length < 3 || !navigator.sendBeacon) { return; }
4472		try {
4473			var fd = new FormData();
4474			fd.append('term', q);
4475			navigator.sendBeacon(CFG.logUrl, fd);
4476		} catch (err) { /* never block the click */ }
4477	}
4478
4479	function renderTrending(panel) {
4480		if (!CFG.trending.length) { panel.body.innerHTML = ''; return; }
4481
4482		panel.body.innerHTML = '<div class="tws-is-empty"><h4>Trending on ' + esc(CFG.brand) + '</h4>'
4483			+ '<div class="tws-is-chips">'
4484			+ CFG.trending.map(function (t) { return '<button type="button" class="tws-is-chip">' + esc(t) + '</button>'; }).join('')
4485			+ '</div></div>';
4486
4487		[].slice.call(panel.body.querySelectorAll('.tws-is-chip')).forEach(function (chip) {
4488			chip.addEventListener('click', function (e) {
4489				// This handler is about to delete the element the event came from, so stop
4490				// it here rather than letting a detached target travel up the tree.
4491				e.preventDefault();
4492				e.stopPropagation();
4493
4494				panel.input.value = chip.textContent;
4495				panel.input.focus();
4496				render(panel);
4497			});
4498		});
4499	}
4500
4501	function render(panel) {
4502		var q = panel.input.value.trim();
4503
4504		panel.clear.hidden = !q;
4505		panel.active = -1;
4506
4507		if (q.length < 2) { renderTrending(panel); return; }
4508
4509		// Terminal: the index could not be loaded, so offer the full search and stop. No
4510		// load(), no re-render, therefore no way back into the loop described above.
4511		if (state === 'failed') {
4512			panel.body.innerHTML = '<div class="tws-is-note">Press Enter to search for “<b>' + esc(q) + '</b>”.</div>'
4513				+ '<a class="tws-is-viewall" href="' + esc(searchUrl(q)) + '">Search ' + esc(CFG.brand) + ' for “' + esc(q) + '”</a>';
4514			return;
4515		}
4516
4517		if (!DATA) {
4518			panel.body.innerHTML = '<div class="tws-is-note">Searching…</div>';
4519
4520			load().then(function () {
4521				// Only re-render once the state is settled, and only if the reader has not
4522				// typed on. Either branch below is terminal, so this cannot recurse.
4523				if (state !== 'ready' && state !== 'failed') { return; }
4524				if (panel.input.value.trim() !== q) { return; }
4525
4526				render(panel);
4527			});
4528
4529			return;
4530		}
4531
4532		var found = search(q, resultsWanted());
4533		var hits = found.rows;
4534
4535		if (!hits.length) {
4536			panel.body.innerHTML = '<div class="tws-is-note">No quick matches for “<b>' + esc(q) + '</b>” – press Enter to search everything.</div>'
4537				+ '<a class="tws-is-viewall" href="' + esc(searchUrl(q)) + '">Search all of ' + esc(CFG.brand) + ' for “' + esc(q) + '”</a>';
4538			return;
4539		}
4540
4541		var hint = CFG.hint
4542			? '<span class="tws-is-kbd"><kbd>↑</kbd> <kbd>↓</kbd> to move &nbsp; <kbd>Enter</kbd> to open</span>'
4543			: '<span></span>';
4544
4545		// "quick matches", not "matches". This panel searches titles, categories and authors
4546		// in the index; the results page runs Relevanssi over the whole article text and will
4547		// usually find more, so the wording must not promise a number the next page contradicts.
4548		// No number. The panel shows five rows, so "152 quick matches" above five results
4549		// reads as a miscount even though it is the honest size of the filtered set. The
4550		// button underneath is what offers the rest.
4551		panel.body.innerHTML = '<div class="tws-is-meta"><span>Quick matches</span>' + hint + '</div>'
4552			+ '<ul class="tws-is-results">'
4553			+ hits.map(function (r) {
4554				return '<li class="tws-is-item"><a href="' + esc(r.url) + '">'
4555					+ '<span class="tws-is-thumb">' + (r.thumb ? '<img src="' + esc(r.thumb) + '" alt="" loading="lazy" decoding="async">' : '') + '</span>'
4556					+ '<span class="tws-is-text">'
4557					+ (r.cat ? '<span class="tws-is-cat">' + esc(r.cat) + '</span>' : '')
4558					+ '<span class="tws-is-title">' + mark(r.title, q) + '</span>'
4559					+ '<span class="tws-is-byline">' + (r.author ? 'By <b>' + mark(r.author, q) + '</b> · ' : '') + esc(pretty(r.date)) + '</span>'
4560					+ '</span></a></li>';
4561			}).join('')
4562			+ '</ul>'
4563			+ '<a class="tws-is-viewall" href="' + esc(searchUrl(q)) + '">'
4564			+ 'Search everything for “' + esc(q) + '”'
4565			+ '</a>';
4566	}
4567
4568	/* ---------- keyboard ---------- */
4569
4570	function setActive(panel, i) {
4571		var items = [].slice.call(panel.body.querySelectorAll('.tws-is-item'));
4572		if (!items.length) { return; }
4573
4574		panel.active = (i + items.length) % items.length;
4575
4576		items.forEach(function (el, j) { el.classList.toggle('is-active', j === panel.active); });
4577		items[panel.active].scrollIntoView({ block: 'nearest' });
4578	}
4579
4580	function onKey(panel, e) {
4581		var items = panel.body.querySelectorAll('.tws-is-item a');
4582
4583		if (e.key === 'ArrowDown') { e.preventDefault(); setActive(panel, panel.active + 1); }
4584		else if (e.key === 'ArrowUp') { e.preventDefault(); setActive(panel, panel.active - 1); }
4585		else if (e.key === 'Enter') {
4586			e.preventDefault();
4587
4588			if (panel.active > -1 && items[panel.active]) { logPick(panel.input.value); window.location.href = items[panel.active].href; }
4589			else if (panel.input.value.trim()) { window.location.href = searchUrl(panel.input.value.trim()); }
4590		}
4591	}
4592
4593	/* ---------- open and close ---------- */
4594
4595	// Alpine owns the dropdowns; this only mirrors their state onto <body> so the dim can
4596	// show, and offers Escape and click-outside by clicking the theme's own toggle button.
4597	var dropdowns = [].slice.call(document.querySelectorAll('.desktop-search-dropdown, .mobile-search-dropdown'));
4598	var toggles = [].slice.call(document.querySelectorAll('.header-search-wrapper button, button.lg\\:hidden'))
4599		.filter(function (b) { return b.querySelector('svg circle'); });
4600
4601	function anyOpen() {
4602		return dropdowns.some(function (d) {
4603			return d.offsetParent !== null && d.getBoundingClientRect().height > 4;
4604		});
4605	}
4606
4607	var lastOpen = null;
4608	var syncQueued = false;
4609
4610	// Alpine's x-collapse writes an inline height on the dropdown on every animation frame,
4611	// so the observer below can fire dozens of times per open. Coalescing to one frame and
4612	// bailing when nothing actually changed keeps that from turning into a layout storm.
4613	function syncState() {
4614		if (syncQueued) { return; }
4615
4616		syncQueued = true;
4617
4618		(window.requestAnimationFrame || function (f) { setTimeout(f, 16); })(function () {
4619			syncQueued = false;
4620			applyState();
4621		});
4622	}
4623
4624	function applyState() {
4625		var open = anyOpen();
4626
4627		if (open === lastOpen) { return; }
4628
4629		lastOpen = open;
4630
4631		document.body.classList.toggle('tws-is-open', open);
4632
4633		if (open) {
4634			var visible = panels.filter(function (p) { return p.el && p.input && p.el.offsetParent !== null; })[0];
4635
4636			if (visible && document.activeElement !== visible.input) {
4637				setTimeout(function () { try { visible.input.focus(); } catch (e) {} }, 60);
4638			}
4639		}
4640	}
4641
4642	function closeAll() {
4643		if (!anyOpen()) { return; }
4644
4645		// Clicking the theme's own button keeps Alpine's `expanded` in step. Setting the
4646		// style directly would leave Alpine thinking the panel was still open.
4647		toggles.forEach(function (b) { if (b.offsetParent !== null) { b.click(); } });
4648
4649		setTimeout(applyState, 60);
4650	}
4651
4652	if (window.MutationObserver && dropdowns.length) {
4653		var mo = new MutationObserver(function () { syncState(); });
4654
4655		dropdowns.forEach(function (d) {
4656			mo.observe(d, { attributes: true, attributeFilter: ['style', 'class', 'hidden'] });
4657		});
4658	}
4659
4660	toggles.forEach(function (b) {
4661		b.addEventListener('click', function () {
4662			setTimeout(applyState, 30);
4663			load();
4664		});
4665	});
4666
4667	document.addEventListener('keydown', function (e) {
4668		if (e.key === 'Escape') { closeAll(); }
4669	});
4670
4671	// CAPTURE phase, deliberately.
4672	//
4673	// Clicking a trending chip replaces the panel's innerHTML, which destroys the chip. By
4674	// the time a bubbling listener on document ran, e.target was an element detached from
4675	// the DOM, so closest('[data-tws-is]') returned null, the "was the click inside the
4676	// panel?" guard failed, and the panel closed itself the instant a chip was clicked.
4677	// Running in the capture phase means this decision is made on the way DOWN, before any
4678	// handler has had the chance to re-render. The isConnected check is the second belt: a
4679	// target that is no longer in the document cannot meaningfully be outside the panel.
4680	document.addEventListener('click', function (e) {
4681		if (!document.body.classList.contains('tws-is-open')) { return; }
4682		if (!e.target || !e.target.isConnected) { return; }
4683		if (e.target.closest('[data-tws-is]') || e.target.closest('.header-search-wrapper')) { return; }
4684		if (toggles.some(function (b) { return b.contains(e.target); })) { return; }
4685
4686		closeAll();
4687	}, true);
4688
4689	/* ---------- wire up ---------- */
4690
4691	panels = panels.map(function (el) {
4692		var panel = {
4693			el: el,
4694			input: el.querySelector('.tws-is-input'),
4695			clear: el.querySelector('.tws-is-clear'),
4696			body: el.querySelector('.tws-is-body'),
4697			active: -1,
4698			timer: null
4699		};
4700
4701		if (!panel.input || !panel.body) { return panel; }
4702
4703		panel.input.addEventListener('input', function () {
4704			clearTimeout(panel.timer);
4705			panel.timer = setTimeout(function () { render(panel); }, 120);
4706		});
4707
4708		panel.input.addEventListener('focus', load);
4709		panel.input.addEventListener('keydown', function (e) { onKey(panel, e); });
4710
4711		// A quick match opened with the mouse or a tap (Enter is handled in onKey).
4712		panel.body.addEventListener('click', function (e) {
4713			var a = e.target && e.target.closest ? e.target.closest('.tws-is-item a') : null;
4714			if (a) { logPick(panel.input.value); }
4715		});
4716
4717		panel.clear.addEventListener('click', function () {
4718			panel.input.value = '';
4719			panel.input.focus();
4720			render(panel);
4721		});
4722
4723		renderTrending(panel);
4724
4725		return panel;
4726	});
4727
4728	// A one-line diagnostic, so "is the index actually loading?" can be answered from the
4729	// browser console on any site without adding a debug mode: window.TWS_IS.state()
4730	window.TWS_IS = {
4731		state: function () { return state; },
4732		url: INDEX_URL,
4733		count: function () { return DATA && DATA.r ? DATA.r.length : 0; },
4734		reload: function () { state = 'idle'; loading = null; DATA = null; HAY = null; return load(); }
4735	};
4736
4737	// Fetching on idle rather than on click is what makes the first search feel instant:
4738	// the file is already in memory before anyone reaches for the magnifier.
4739	if (CFG.prefetch) {
4740		if (window.requestIdleCallback) { requestIdleCallback(load, { timeout: 4000 }); }
4741		else { setTimeout(load, 2500); }
4742	}
4743
4744	applyState();
4745})();
4746</script>
4746
4747			
4747<script id="tws-nav-subcategories-helper">
4748(function () {
4749  var SEL = '#mega-menu-primary_navigation > li.mega-menu-flyout.mega-menu-item-has-children,'
4750          + '#mega-menu-primary_navigation > li.mega-menu-flyout.menu-item-has-children';
4751
4752  function items() { return document.querySelectorAll(SEL); }
4753
4754  function sync(li) {
4755    var panel = li.querySelector(':scope > ul');
4756    var bar = li.closest('#header') || li.closest('.nav-header-main');
4757
4758    if (bar) {
4759      var drop = Math.round(bar.getBoundingClientRect().bottom - li.getBoundingClientRect().top);
4760      if (drop > 0) { li.style.setProperty('--tws-subs-top', drop + 'px'); }
4761    }
4762
4763    if (!panel || window.innerWidth < 1024) { return; }
4764
4765    panel.classList.remove('tws-subs-flip');
4766
4767    var width = panel.offsetWidth;
4768    var left = li.getBoundingClientRect().left;
4769
4770    // A zero reading means the panel has no layout yet. Leave it alone.
4771    if (!width) { return; }
4772
4773    if (left + width > window.innerWidth - 16) {
4774      panel.classList.add('tws-subs-flip');
4775    }
4776  }
4777
4778  function syncAll() {
4779    Array.prototype.forEach.call(items(), sync);
4780  }
4781
4782  function bind() {
4783    Array.prototype.forEach.call(items(), function (li) {
4784      ['mouseenter', 'focusin', 'touchstart'].forEach(function (ev) {
4785        li.addEventListener(ev, function () { sync(li); }, { passive: true });
4786      });
4787    });
4788    syncAll();
4789  }
4790
4791  if (document.readyState !== 'loading') { bind(); }
4792  else { document.addEventListener('DOMContentLoaded', bind); }
4793
4794  var timer;
4795  window.addEventListener('resize', function () {
4796    clearTimeout(timer);
4797    timer = setTimeout(syncAll, 150);
4798  });
4799})();
4800</script>
4800
4801    
4801<script id="tws-mobile-panel-script">
4802(function () {
4803  var SRC = '.tws-mp-source[data-tws-mobile-panel]';
4804
4805  function mobilePanel() {
4806    var wraps = document.querySelectorAll('[id^="mega-menu-wrap-"]');
4807
4808    for (var i = 0; i < wraps.length; i++) {
4809      if (wraps[i].closest && wraps[i].closest('.mega-menu-mobile-toggle')) {
4810        return wraps[i].querySelector('ul.mega-menu');
4811      }
4812    }
4813
4814    // No mobile toggle found. The last wrap on the page is the mobile one in
4815    // every template on this network, so fall back to it rather than giving up.
4816    return wraps.length ? wraps[wraps.length - 1].querySelector('ul.mega-menu') : null;
4817  }
4818
4819  function row(className, node) {
4820    var li = document.createElement('li');
4821    li.className = 'tws-mp-item ' + className;
4822    li.appendChild(node);
4823    return li;
4824  }
4825
4826  function build() {
4827    var src = document.querySelector(SRC);
4828    if (!src) { return; }
4829
4830    var ul = mobilePanel();
4831    if (!ul || ul.querySelector('.tws-mp-item')) { return; }
4832
4833    var head = src.querySelector('[data-tws-mp-block="head"]');
4834    var search = src.querySelector('[data-tws-mp-block="search"]');
4835    var foot = src.querySelector('[data-tws-mp-block="foot"]');
4836
4837    // Search first, then the title in front of it, so the title ends up on top
4838    // without needing to know whether the other one is present.
4839    if (search) { ul.insertBefore(row('tws-mp-item-search', search), ul.firstChild); }
4840    if (head) { ul.insertBefore(row('tws-mp-item-head', head), ul.firstChild); }
4841    if (foot) { ul.appendChild(row('tws-mp-item-foot', foot)); }
4842
4843    /* Our close button forwards to Mega Menu's, rather than trying to close the
4844       panel itself, so whatever else that button does - focus, body class,
4845       animation state - still happens. The toggle is the fallback: clicking it
4846       while the panel is open closes it too. */
4847    var close = ul.querySelector('[data-tws-mp-close]');
4848
4849    if (close) {
4850      close.addEventListener('click', function (e) {
4851        e.preventDefault();
4852
4853        var wrap = ul.parentElement;
4854        var real = wrap ? wrap.querySelector('button.mega-close') : null;
4855        var toggle = wrap ? wrap.querySelector('.mega-menu-toggle') : null;
4856
4857        if (real) { real.click(); }
4858        else if (toggle) { toggle.click(); }
4859      });
4860    }
4861
4862    /* If a lazy loader has swapped the logo's src out anyway - a setting
4863       change, a different plugin, a cached page built before the attributes
4864       above were added - put the real one back. Harmless when it has not. */
4865    var logo = ul.querySelector('.tws-mp-logo[data-lazy-src]');
4866
4867    if (logo && logo.getAttribute('data-lazy-src')) {
4868      logo.setAttribute('src', logo.getAttribute('data-lazy-src'));
4869      logo.removeAttribute('data-lazy-src');
4870    }
4871
4872    /* Only now is it safe for the stylesheet to retire Mega Menu's own close
4873       button and reclaim the padding that was reserved for it. If anything
4874       above failed, this class is never added and the panel keeps working the
4875       way it does without this plugin. */
4876    if (head && close) { ul.classList.add('tws-mp-built'); }
4877  }
4878
4879  /* The header's own search button sits above the open panel, so its magnifier
4880     shows through over the menu. It cannot be picked out by CSS: the desktop
4881     and mobile search buttons are identical apart from a responsive utility
4882     class, and the burger and close button are buttons too. Script can tell
4883     them apart, so it marks them here and the stylesheet does the rest, inside
4884     the media query, leaving the desktop header alone.
4885
4886     Both search buttons are marked. The desktop one is already off the page
4887     under 1024px, so hiding it as well costs nothing and saves having to work
4888     out which row each button belongs to. */
4889  function markHeaderSearch() {
4890    var header = document.getElementById('header');
4891    if (!header) { return; }
4892
4893    var buttons = header.querySelectorAll('button');
4894
4895    for (var i = 0; i < buttons.length; i++) {
4896      var b = buttons[i];
4897      if (b.closest('[id^="mega-menu-wrap-"]')) { continue; }
4898      if (!b.querySelector('svg')) { continue; }
4899      b.classList.add('tws-mp-header-search');
4900    }
4901  }
4902
4903  /* Match the header's search icon to the burger, on light headers only.
4904     Both the header background and the burger colour are read from the page
4905     rather than written down here: the header is white on six sites and
4906     #231F20 on Shooting UK, and the burger is #ddd on five, black on
4907     Trout & Salmon. Anything that cannot be read confidently is left alone,
4908     which leaves the icon exactly as it is today. */
4909  function matchSearchToBurger() {
4910    var header = document.getElementById('header');
4911    if (!header) { return; }
4912
4913    var bg = getComputedStyle(header).backgroundColor;
4914    var m = bg.match(/rgba?\(\s*(\d+)[,\s]+(\d+)[,\s]+(\d+)(?:[,\s]+([\d.]+))?/);
4915    if (!m) { return; }
4916
4917    // A see-through header cannot be judged. Leave it.
4918    if (m[4] !== undefined && parseFloat(m[4]) < 0.9) { return; }
4919
4920    var light = (m[1] * 299 + m[2] * 587 + m[3] * 114) / 1000 > 140;
4921
4922    // Dark header: the white icon is already correct.
4923    if (!light) { return; }
4924
4925    var bar = document.querySelector('.mega-menu-mobile-toggle .mega-toggle-animated-inner');
4926    if (!bar) { return; }
4927
4928    var colour = getComputedStyle(bar).backgroundColor;
4929    var cm = colour.match(/rgba?\(\s*\d+[,\s]+\d+[,\s]+\d+(?:[,\s]+([\d.]+))?/);
4930    if (!cm) { return; }
4931    if (cm[1] !== undefined && parseFloat(cm[1]) === 0) { return; }
4932
4933    header.style.setProperty('--tws-mp-burger', colour);
4934    header.classList.add('tws-mp-match-search');
4935  }
4936
4937  /* Mega Menu puts mega-menu-open on the toggle when the panel slides in. Watch
4938     for it rather than listening for a click, so the class stays correct however
4939     the panel was opened or closed: the burger, the close button, the escape
4940     key or a tap outside it. */
4941  function watchToggle() {
4942    var wraps = document.querySelectorAll('[id^="mega-menu-wrap-"]');
4943    var root = document.documentElement;
4944
4945    function readAll() {
4946      var open = false;
4947
4948      for (var i = 0; i < wraps.length; i++) {
4949        var t = wraps[i].querySelector('.mega-menu-toggle');
4950        if (t && t.classList.contains('mega-menu-open')) { open = true; }
4951      }
4952
4953      root.classList.toggle('tws-mp-open', open);
4954    }
4955
4956    if (!window.MutationObserver) { return; }
4957
4958    var observer = new MutationObserver(readAll);
4959
4960    for (var i = 0; i < wraps.length; i++) {
4961      var toggle = wraps[i].querySelector('.mega-menu-toggle');
4962      if (toggle) { observer.observe(toggle, { attributes: true, attributeFilter: ['class'] }); }
4963    }
4964
4965    readAll();
4966  }
4967
4968  function init() {
4969    build();
4970    markHeaderSearch();
4971    matchSearchToBurger();
4972    watchToggle();
4973  }
4974
4975  if (document.readyState !== 'loading') { init(); }
4976  else { document.addEventListener('DOMContentLoaded', init); }
4977
4978  window.addEventListener('load', init);
4979})();
4980</script>
4980
4981    
4981<script nowprocket id="tws-card-line-clamp-js">
4982(function () {
4983    var TOTAL = 6, FLOOR = 2;
4984
4985    function lineHeight(el) {
4986        var v = getComputedStyle(el).lineHeight;
4987        if (v !== 'normal') return parseFloat(v);
4988        var s = document.createElement('span');
4989        s.textContent = 'A';
4990        s.style.cssText = 'display:block;position:absolute;visibility:hidden;white-space:nowrap';
4991        el.appendChild(s);
4992        var h = s.offsetHeight;
4993        el.removeChild(s);
4994        return h || parseFloat(getComputedStyle(el).fontSize) * 1.2;
4995    }
4996
4997    function padV(el) {
4998        var cs = getComputedStyle(el);
4999        return parseFloat(cs.paddingTop) + parseFloat(cs.paddingBottom);
5000    }
5001
5002    function runBlock(block) {
5003        var cards = [].slice.call(block.querySelectorAll('li')).filter(function (li) {
5004            return li.querySelector(':scope > div > a > h3') && li.offsetParent !== null;
5005        });
5006        if (!cards.length) return;
5007
5008        var ctaMax = Infinity, cta = block.querySelector('li.latest-posts-image');
5009        if (cta && cta.offsetParent !== null) {
5010            var m = parseFloat(getComputedStyle(cta).maxHeight);
5011            if (!isNaN(m)) ctaMax = m;
5012        }
5013
5014        // Read everything in the unclamped state first, then write, so the page reflows once.
5015        block.classList.add('tws-lc-measure');
5016        var data = cards.map(function (li) {
5017            var h = li.querySelector(':scope > div > a > h3');
5018            var p = li.querySelector(':scope > div > a > p');
5019            var hasP = p && p.textContent.trim() !== '';
5020            var tLH = lineHeight(h), tH = h.offsetHeight, tPad = padV(h);
5021            var bLH = hasP ? lineHeight(p) : 0, bH = hasP ? p.offsetHeight : 0, bPad = hasP ? padV(p) : 0;
5022            var bottom = h.parentNode.parentNode.getBoundingClientRect().bottom;
5023            return {
5024                h: h, p: hasP ? p : null, tLH: tLH, bLH: bLH,
5025                tN: Math.max(1, Math.round((tH - tPad) / tLH)),
5026                bN: hasP ? Math.max(1, Math.round((bH - bPad) / bLH)) : 0,
5027                fixed: (bottom - li.getBoundingClientRect().top) - (tH - tPad) - (bH - bPad)
5028            };
5029        });
5030        block.classList.remove('tws-lc-measure');
5031
5032        data.forEach(function (d) {
5033            var t = Math.min(d.tN, TOTAL - Math.min(d.bN, FLOOR));
5034            var b = Math.min(d.bN, TOTAL - t);
5035            var room = ctaMax - d.fixed;
5036            while (t * d.tLH + b * d.bLH > room) {
5037                if (b > FLOOR && b >= t) b--;
5038                else if (t > FLOOR) t--;
5039                else if (b > 1) b--;
5040                else break;
5041            }
5042            // max-height as well as the clamp: Safari puts the ellipsis on the
5043            // last line but can leave the box taller, showing half the next line.
5044            d.h.style.webkitLineClamp = t;
5045            d.h.style.maxHeight = (t * d.tLH) + 'px';
5046            if (d.p) {
5047                d.p.style.webkitLineClamp = b;
5048                d.p.style.maxHeight = (b * d.bLH) + 'px';
5049            }
5050        });
5051    }
5052
5053    function run() {
5054        [].forEach.call(document.querySelectorAll('.latest-posts-block'), runBlock);
5055    }
5056
5057    var timer;
5058    function later() { clearTimeout(timer); timer = setTimeout(run, 150); }
5059
5060    if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', run);
5061    else run();
5062    window.addEventListener('load', run);
5063    window.addEventListener('resize', later);
5064    if (document.fonts && document.fonts.ready) document.fonts.ready.then(run);
5065})();
5066</script>
5066
5067    
5067<script>window.lazyLoadOptions=[{elements_selector:"img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]",data_src:"lazy-src",data_srcset:"lazy-srcset",data_sizes:"lazy-sizes",class_loading:"lazyloading",class_loaded:"lazyloaded",threshold:300,callback_loaded:function(element){if(element.tagName==="IFRAME"&&element.dataset.rocketLazyload=="fitvidscompatible"){if(element.classList.contains("lazyloaded")){if(typeof window.jQuery!="undefined"){if(jQuery.fn.fitVids){jQuery(element).parent().fitVids()}}}}}},{elements_selector:".rocket-lazyload",data_src:"lazy-src",data_srcset:"lazy-srcset",data_sizes:"lazy-sizes",class_loading:"lazyloading",class_loaded:"lazyloaded",threshold:300,}];window.addEventListener('LazyLoad::Initialized',function(e){var lazyLoadInstance=e.detail.instance;if(window.MutationObserver){var observer=new MutationObserver(function(mutations){var image_count=0;var iframe_count=0;var rocketlazy_count=0;mutations.forEach(function(mutation){for(var i=0;i<mutation.addedNodes.length;i++){if(typeof mutation.addedNodes[i].getElementsByTagName!=='function'){continue}
5068if(typeof mutation.addedNodes[i].getElementsByClassName!=='function'){continue}
5069images=mutation.addedNodes[i].getElementsByTagName('img');is_image=mutation.addedNodes[i].tagName=="IMG";iframes=mutation.addedNodes[i].getElementsByTagName('iframe');is_iframe=mutation.addedNodes[i].tagName=="IFRAME";rocket_lazy=mutation.addedNodes[i].getElementsByClassName('rocket-lazyload');image_count+=images.length;iframe_count+=iframes.length;rocketlazy_count+=rocket_lazy.length;if(is_image){image_count+=1}
5070if(is_iframe){iframe_count+=1}}});if(image_count>0||iframe_count>0||rocketlazy_count>0){lazyLoadInstance.update()}});var b=document.getElementsByTagName("body")[0];var config={childList:!0,subtree:!0};observer.observe(b,config)}},!1)</script>
5070<script data-no-minify="1" async src="https://www.shootinguk.co.uk/app/plugins/wp-rocket/assets/js/lazyload/17.8.3/lazyload.min.js"></script>
5070  
5070<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"46a38ceef95c499da17cf2f389e2b00d","r":1,"spa":2}' crossorigin="anonymous"></script>
5070
5071</body>
5072</html>
5073
5074<!-- This website is like a Rocket, isn't it? Performance optimized by WP Rocket. Learn more: https://wp-rocket.me - Debug: cached@1790926367 -->

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.