PageSourceSearch

https://markpriorphotography.com/about/

html markpriorphotography.com collected 2026-10-07 03:23:58 UTC 26,478 bytes, 409 lines download raw bytes

1<!doctype html>
2<html class="scroll-smooth" lang="en">
3 <head> 
4  
4<script defer src="../rw/elements/com.realmac.corepack/alpine-collapse.js?rwcache=797399380"></script>
4 
5  
5<script defer src="../rw/elements/com.realmac.corepack/alpine-focus.js?rwcache=797399380"></script>
5 
6  
6<script defer src="../rw/elements/com.realmac.corepack/alpine-intersect.js?rwcache=797399380"></script>
6 
7  
7<script defer src="../rw/elements/com.realmac.corepack/alpine-ui.js?rwcache=797399380"></script>
7 
8  
8<script defer src="../rw/elements/com.realmac.corepack/alpine.js?rwcache=797399380"></script>
8 
9  
9<script src="../rw/elements/com.realmac.corepack/smoothscroll.min.js?rwcache=797399380"></script>
9 
10  
10<script src="../rw/elements/com.realmac.corepack/gsap.min.js?rwcache=797399380"></script>
10 
11  
11<script src="../rw/elements/com.realmac.corepack/ScrollTrigger.min.js?rwcache=797399380"></script>
11 
12  
12<script src="../rw/elements/com.realmac.corepack/gsap-effects.js?rwcache=797399380"></script>
12 
13  <meta charset="utf-8" /> 
14  <meta http-equiv="x-ua-compatible" content="ie=edge" /> 
15  <meta name="viewport" content="width=device-width" /> 
16  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
17  <link rel="canonical" href="https://www.markpriorphotography.com/about/" /> 
18  <meta name="description" content="Just a bit of a blurb about the site." /> 
19  <link rel="icon" href="/favicon.ico" sizes="48x48 32x32 16x16" /> 
20  <link rel="apple-touch-icon" type="image/png" href="../resources/apple-touch-icon-180x180.png" sizes="180x180" /> 
21  <link rel="mask-icon" href="../resources/safari-pinned-tab.svg" color="#FFFFFF" /> 
22  <link rel="icon" type="image/x-icon" href="../resources/favicon-48x48.ico" sizes="48x48" /> 
23  <meta property="og:type" content="website" /> 
24  <meta property="og:site_name" content="mark prior photography" /> 
25  <meta property="og:title" content="about | mark prior photography" /> 
26  <meta property="og:description" content="Just a bit of a blurb about the site." /> 
27  <meta property="og:url" content="https://www.markpriorphotography.com/about/" /> 
28  <title>about | mark prior photography</title> 
29  <link href="index.css?rwcache=797399380" media="all" rel="stylesheet" type="text/css" /> 
30  
30<script src="../rw/elements/com.realmac.corepack/effectsTransforms.js?rwcache=797399380"></script>
30 
31  
31<script src="../rw/elements/com.realmac.corepack/modal.js?rwcache=797399380"></script>
31 
32  
32<script src="../rw/elements/com.realmac.corepack/alpine-store-filters.js?rwcache=797399380"></script>
32 
33  
33<script src="../rw/elements/com.realmac.corepack/alpine-store-transitions.js?rwcache=797399380"></script>
33 
34  
34<script src="../rw/elements/com.realmac.corepack/alpine-exit-intent.js?rwcache=797399380"></script>
34 
35  
35<script src="../rw/elements/com.realmac.corepack/image-lightbox.js?rwcache=797399380"></script>
35 
36  <style lang="css">
37    /* Required for alpine.js x-cloak directive to work */
38    [x-cloak] {
39        display: none !important;
40    }
41
42    [data-rwx-droparea] {
43        /* width: 100%; */
44        min-width: 60px !important;
45        /* height: 100%; */
46    }
47
48    /* For Webkit-based browsers (Chrome, Safari and Opera) */
49    .scrollbar-hide::-webkit-scrollbar {
50        display: none;
51    }
52
53    /* For IE, Edge and Firefox */
54    .scrollbar-hide {
55        -ms-overflow-style: none;
56        /* IE and Edge */
57        scrollbar-width: none;
58        /* Firefox */
59    }
60</style> 
61  <link rel="stylesheet" type="text/css" media="all" href="../rw/styles/consolidated.css?rwcache=797399380" /> 
62 </head> 
63 <body class="bg-surface-50 dark:bg-surface-950"> 
64  <div x-data="navigationStandard('mobile-menu-rw6FC2B7C7_298C_48CC_93F6_4FB2246E79C3')" class="relative z-50"> 
65   <div style="display: none" x-bind="backdrop" x-transition:enter="transition ease-out" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease-in" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="fixed inset-0 z-50 duration-150 pointer-events-none bg-surface-900 bg-opacity-[20%] dark:bg-opacity-[20%] backdrop-blur-[0px]" aria-hidden="true"></div> 
66   <div style="display: none" x-bind="menu" x-transition:enter="transition ease-out" x-transition:enter-start="opacity-0 -translate-y-full" x-transition:enter-end="opacity-100 translate-y-0" x-transition:leave="transition ease-in" x-transition:leave-start="opacity-100 translate-y-0" x-transition:leave-end="opacity-0 -translate-y-full" class="fixed z-50 origin-top p-8 ring-1 ring-zinc-900/5 duration-150 overflow-y-auto bg-surface-100 bg-opacity-[100%] dark:bg-opacity-[100%] backdrop-blur-[0px] shadow-none rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none border-t-0 border-r-0 border-b-0 border-l-0 border-surface-900 top-6 right-6 bottom-auto left-6" tabindex="-1"> 
67    <div class="flex items-center justify-between"> 
68     <button aria-label="Close menu" type="button" @click="open = false" class="transition-all duration-[300ms] delay-[0ms] ease-in-out absolute inline-flex items-center justify-center rounded-md p-2.5 cursor-pointer text-text-50 hover:text-brand-500 top-8 right-8"> 
69      <svg viewbox="0 0 24 24" aria-hidden="true" class="size-6 transition-colors duration-300 text-text-50 hover:text-text-50"> 
70       <path d="m17.25 6.75-10.5 10.5M6.75 6.75l10.5 10.5" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path> 
71      </svg> </button> 
72    </div> 
73    <nav> 
74     <ul class=""> 
75      <li x-data="{ open: false }" class="cursor-pointer"> 
76       <div class="block my-2 text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out flex items-center justify-between" @click="open = !open" aria-current="page"> 
77        <a class="flex justify-between items-center" href="../about/" aria-current="page">about</a> 
78       </div> </li> 
79      <li x-data="{ open: false }" class="cursor-pointer"> 
80       <div class="block my-2 text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out flex items-center justify-between" @click="open = !open"> 
81        <a class="flex justify-between items-center" href="../books/">books</a> 
82       </div> </li> 
83      <li x-data="{ open: false }" class="cursor-pointer"> 
84       <div class="block my-2 text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out flex items-center justify-between" @click="open = !open"> 
85        <a class="flex justify-between items-center" href="../portfolio/">portfolio</a> 
86       </div> </li> 
87      <li x-data="{ open: false }" class="cursor-pointer"> 
88       <div class="block my-2 text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out flex items-center justify-between" @click="open = !open"> 
89        <a class="flex justify-between items-center" href="../shop/">shop</a> 
90       </div> </li> 
91     </ul> 
92    </nav> 
93   </div> 
94  </div> 
95  <div class="rw3CFC5D5D_41D8_4182_BAB0_6A7493F8CFD5 group/container group/rw3CFC5D5D_41D8_4182_BAB0_6A7493F8CFD5 grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
96   <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
97    <div class="rw88D73419_4493_4CE3_B8AB_E7E6D1E07F99 group/container group/rw88D73419_4493_4CE3_B8AB_E7E6D1E07F99 grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
98     <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-7 pl-0 pr-0">
99      <div class="rwD4D8C7B0_B302_4055_9F9F_F1B930D9D16A group/container group/rwD4D8C7B0_B302_4055_9F9F_F1B930D9D16A grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
100       <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
101        <h1 class="[&amp;_a]:text-brand-600 [&amp;_a]:no-underline [&amp;_a]:font-[400] [&amp;_a:hover]:text-brand-800 [&amp;_a:hover]:no-underline [&amp;_a:hover]:font-[400] [&amp;_a:visited]:text-brand-800 [&amp;_a:visited]:no-underline [&amp;_a:visited]:font-[400] block w-auto h-auto mt-0 mb-0 ml-0 mr-0 pt-2 pb-2 pl-0 pr-0 text-brand-600 text-opacity-[100%] dark:text-opacity-[100%] font-century-gothic text-3xl font-[400] tracking-normal leading-normal not-italic text-shadow-none normal-case whitespace-none text-left" id=""> <span class="font-century-gothic text-3xl"><a title="home" href="../">mark prior photography</a></span> </h1>
102        <div class="w-auto h-1 mt-0 mb-0 ml-0 mr-0 pt-0 pb-5 pl-0 pr-0 bg--500 bg-opacity-[100%] dark:bg-opacity-[100%] border-t-2 border-r-0 border-b-0 border-l-0 border-solid rounded-tl rounded-tr rounded-bl rounded-br border-surface-500/[100%]" aria-orientation="horizontal" id="" role="separator">
103          &nbsp; 
104        </div>
105       </div> 
106       <div class="z-0 transform-gpu overflow-hidden"> 
107       </div> 
108      </div>
109      <div class="rw6949E4DA_6732_4D2A_B197_CD301962F8AC group/container group/rw6949E4DA_6732_4D2A_B197_CD301962F8AC grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
110       <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
111        <header class="group/rw6FC2B7C7_298C_48CC_93F6_4FB2246E79C3 group/navbar items-center flex w-full h-auto mt-0 mb-0 ml-auto mr-auto bg-surface-50 bg-opacity-[100%] dark:bg-opacity-[100%]" id=""> 
112         <nav class="mx-auto flex items-center justify-between container w-full h-auto pt-0 pb-0 pl-0 pr-0"> 
113          <!-- Logo --> 
114          <div class="flex pt-0 pb-0 pl-0 pr-0"> 
115          </div> 
116          <!-- Mobile menu button --> 
117          <div class="flex lg:hidden"> 
118           <button x-data type="button" class="cursor-pointer text-text-50 hover:text-brand-500" @click="$dispatch('navigation-standard-toggle', 'mobile-menu-rw6FC2B7C7_298C_48CC_93F6_4FB2246E79C3')"> <span class="sr-only">Open main menu</span> 
119            <svg class="h-6 w-6" fill="none" viewbox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true"> 
120             <path stroke-linecap="round" stroke-linejoin="round" d="M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5" /> 
121            </svg> </button> 
122          </div> 
123          <!-- Desktop items --> 
124          <div class="hidden lg:flex gap-5"> 
125           <div x-data="desktopSubmenu" class="relative"> 
126            <a href="../about/" @mouseover="handleMouseEnter" @mouseleave="handleMouseLeave" class="flex items-center text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out" aria-current="page"> about </a> 
127           </div> 
128           <div x-data="desktopSubmenu" class="relative"> 
129            <a href="../books/" @mouseover="handleMouseEnter" @mouseleave="handleMouseLeave" class="flex items-center text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out"> books </a> 
130           </div> 
131           <div x-data="desktopSubmenu" class="relative"> 
132            <a href="../portfolio/" @mouseover="handleMouseEnter" @mouseleave="handleMouseLeave" class="flex items-center text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out"> portfolio </a> 
133           </div> 
134           <div x-data="desktopSubmenu" class="relative"> 
135            <a href="../shop/" @mouseover="handleMouseEnter" @mouseleave="handleMouseLeave" class="flex items-center text-text-50 text-opacity-[100%] dark:text-opacity-[100%] font-quote text-base text-shadow-none font-[400] tracking-normal hover:text-text-600 aria-[current=page]:text-text-600 hover:text-opacity-[100%] dark:hover:text-opacity-[100%] aria-[current=page]:text-opacity-[100%] dark:aria-[current=page]:text-opacity-[100%] hover:text-shadow-none aria-[current=page]:text-shadow-none hover: aria-[current=page]: pt-0 pb-0 pl-0 pr-0 rounded-tl-none rounded-tr-none rounded-bl-none rounded-br-none transition-all duration-[300ms] delay-[0ms] ease-in-out"> shop </a> 
136           </div> 
137          </div> 
138          <!-- Desktop right items --> 
139          <div class="hidden lg:flex lg:justify-end lg:flex-1"> 
140          </div> 
141         </nav> 
142        </header>
143       </div> 
144       <div class="z-0 transform-gpu overflow-hidden"> 
145       </div> 
146      </div>
147     </div> 
148     <div class="z-0 transform-gpu overflow-hidden"> 
149     </div> 
150    </div>
151    <div class="rw61DFA366_8612_4733_951C_E1FC201A2A1C group/container group/rw61DFA366_8612_4733_951C_E1FC201A2A1C grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
152     <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
153      <div class="rw6142135A_1B9C_43A8_872E_CA62DC5366B0 group/container group/rw6142135A_1B9C_43A8_872E_CA62DC5366B0 grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
154       <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
155        <article class="prose prose-article w-auto h-auto" id=""> 
156         <p>Hello. Some of my photography is collected on this web site, mostly travel photography.</p>
157         <p>I abandoned Adobe Lightroom for DxO PhotoLab and started to reprocess some old images. I was so happy with the results that I decided to refresh this web site. I have now reprocessed all the photos that were previously here, added some more that got better when I reprocessed them, and then added the last couple of trips.</p>
158         <p>I haven't reworked the Blurb books, and doubt that I will, and my RedBubble account is still a mess and largely has the old versions.</p>
159         <p>This site was also developed with new software (Rapidweaver Elements) so it's also a work in progress as I try to translate what I want into design components in the new software. It's probably going to be slow too due to the large number of images on the pages.</p> 
160        </article>
161       </div> 
162       <div class="z-0 transform-gpu overflow-hidden"> 
163       </div> 
164      </div>
165     </div> 
166     <div class="z-0 transform-gpu overflow-hidden"> 
167     </div> 
168    </div>
169    <div class="rw95E54CBF_F495_4810_A17B_AB8F03261A37 group/container group/rw95E54CBF_F495_4810_A17B_AB8F03261A37 grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
170     <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
171      <div class="rw12D6723E_BEA5_4BFD_B6AD_00090A418FD6 group/container group/rw12D6723E_BEA5_4BFD_B6AD_00090A418FD6 grid-cols-1 [&amp;>*]:col-start-1 [&amp;>*]:row-start-1 [&amp;>*]:min-w-0 grid w-full h-auto mt-0 mb-0 ml-auto mr-auto" data-filter-tags="" id=""> 
172       <div class="relative z-30 flex flex-col peer container w-full h-auto self-center justify-self-center gap-md pt-0 pb-0 pl-0 pr-0">
173        <div class="w-auto h-1 mt-0 mb-0 ml-0 mr-0 pt-3 pb-1 pl-0 pr-0 bg--500 bg-opacity-[100%] dark:bg-opacity-[100%] border-t-0 border-r-0 border-b-2 border-l-0 border-solid rounded-tl rounded-tr rounded-bl rounded-br border-surface-500/[100%]" aria-orientation="horizontal" id="" role="separator">
174          &nbsp; 
175        </div>
176       </div> 
177       <div class="z-0 transform-gpu overflow-hidden"> 
178       </div> 
179      </div>
180     </div> 
181     <div class="z-0 transform-gpu overflow-hidden"> 
182     </div> 
183    </div>
184   </div> 
185   <div class="z-0 transform-gpu overflow-hidden"> 
186   </div> 
187  </div> 
188  
188<script>
189    gsap.registerPlugin(ScrollTrigger);
190    document.addEventListener("DOMContentLoaded", () => {
191        const revealElements = document.querySelectorAll("[data-reveal]");
192        revealElements.forEach((element, index) => {
193            element.style.visibility = "hidden";
194            element.style.transitionProperty = "none";
195
196            const {
197                revealAnimation: animation = "fadeUpIn",
198                revealExitAnimation: exitAnimation = "fadeUpOut",
199                revealPlay: play = "enter-exit",
200                revealStart: start = "top bottom",
201                revealEnd: end = "top top",
202                revealDelay: delay = 0,
203                revealDuration: duration = 0.5,
204                revealEasing: easing = "power1.out",
205                revealDistance: distance = 200,
206                revealDegrees: degrees = 90,
207                revealScrub: scrub = false,
208                revealDebug: debug = false,
209                revealId,
210            } = element.dataset;
211
212            const id = `${revealId}-${index}`;
213            const wantsScrub = scrub === "true";
214            const wantsDebug = debug === "true";
215            const wantsExitAnimation = play == "enter-exit";
216            const playOnce = play == "enter-once";
217            const durationNumber = parseFloat(duration);
218            const delayNumber = parseFloat(delay);
219            const degreesNumber = parseFloat(degrees);
220            const degreesNumberOut = degreesNumber * -1;
221            
222            let triggeredOnce = false;
223            
224            const config = {
225                duration: durationNumber,
226                ease: easing,
227                delay: delayNumber,
228                distance: distance,
229                degrees: degreesNumber,
230                degreesOut: degreesNumberOut,
231                clearProps: "auto",
232                onComplete: () => {
233                    element.style.transitionProperty = "";
234                },
235            }
236
237            const markers = wantsDebug
238                ? {
239                    startColor: "green",
240                    endColor: "red",
241                    fontSize: "12px",
242                    fontWeight: "bold",
243                    indent: 20,
244                }
245                : false;
246
247            if (wantsScrub) {
248                gsap.effects[animation](element, {
249                    scrollTrigger: {
250                        trigger: element,
251                        start: start,
252                        end: end,
253                        scrub: true,
254                        markers,
255                        id,
256                    },
257                    ...config
258                });
259            } else {
260                ScrollTrigger.create({
261                    trigger: element,
262                    start: start,
263                    end: end,
264                    markers,
265                    id,
266                    onEnter: () => {
267                        if (playOnce && triggeredOnce) return;
268                        element.style.transitionProperty = "none";
269                        triggeredOnce = true;
270                        gsap.effects[animation](element, config);
271                    },
272                    onLeave: () => {
273                        if (wantsExitAnimation) {
274                            element.style.transitionProperty = "none";
275                            gsap.effects[exitAnimation](element, { delay: 0, ...config });
276                        }
277                    },
278                    onEnterBack: () => {
279                        if (wantsExitAnimation) {
280                            element.style.transitionProperty = "none";
281                            gsap.effects[animation](element, config);
282                        }
283                    },
284                    onLeaveBack: () => {
285                        if (wantsExitAnimation) {
286                            element.style.transitionProperty = "none";
287                            gsap.effects[exitAnimation](element, { delay: 0, ...config });
288                        }
289                    },
290                });
291            }
292        });
293    });
294</script>
294 
295  
295<script>
296    document.addEventListener("alpine:init", () => {
297        Alpine.data("desktopSubmenu", () => ({
298            open: false,
299            closeTimeout: null,
300            closeDelay: 300,
301
302            openMenu() {
303                clearTimeout(this.closeTimeout);
304                this.open = true;
305            },
306
307            startCloseTimer() {
308                this.closeTimeout = setTimeout(() => {
309                    this.closeMenu();
310                }, this.closeDelay);
311            },
312
313            cancelCloseTimer() {
314                clearTimeout(this.closeTimeout);
315            },
316
317            closeMenu() {
318                this.open = false;
319            },
320
321            handleMouseEnter() {
322                this.openMenu();
323            },
324
325            handleMouseLeave() {
326                this.startCloseTimer();
327            },
328        }));
329    });
330</script>
330 
331  
331<script>
332    document.addEventListener("alpine:init", () => {
333        Alpine.data("navigationStandard", (id = null) => ({
334            id,
335            open: false,
336
337            init() {
338                window.addEventListener("navigation-standard-close", (e) => {
339                    if (this.id === e.detail) {
340                        this.close();
341                    }
342                });
343
344                window.addEventListener("navigation-standard-toggle", (e) => {
345                    if (this.id === e.detail) {
346                        this.toggle();
347                    }
348                });
349
350                window.addEventListener("keyup", (e) => {
351                    if (e.key === "Escape") {
352                        this.close();
353                    }
354                });
355
356                this.$el.addEventListener("click", (e) => {
357                    const link = e.target.closest("a");
358                    if (link && this.open) {
359                        this.close();
360                    }
361                });
362
363                this.$watch("open", (value) => {
364                    if (value) {
365                        document.body.style.overflow = "hidden";
366                    } else {
367                        document.body.style.overflow = "auto";
368                    }
369                });
370            },
371
372            toggle() {
373                if (this.open) {
374                    return this.close();
375                }
376
377                this.open = true;
378            },
379
380            close() {
381                if (!this.open) {
382                    return;
383                }
384
385                this.open = false;
386            },
387
388            backdrop: {
389                ["x-show"]() {
390                    return this.open;
391                },
392                ["@click"]() {
393                    this.close();
394                },
395            },
396
397            menu: {
398                ["x-show"]() {
399                    return this.open;
400                },
401                ["@click.away"]() {
402                    this.close();
403                },
404            },
405        }));
406    });
407</script>
407  
408 </body>
409</html>

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