@tailwind base;@tailwind components;@tailwind utilities;*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*! tailwindcss v3.4.16 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}button,input,select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:0;background-color:transparent;outline:2px solid transparent;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.left-60{left:15rem}.left-\[-4\.57\%\]{left:-4.57%}.left-\[1014px\]{left:1014px}.left-\[1048px\]{left:1048px}.left-\[11\.54\%\]{left:11.54%}.left-\[113px\]{left:113px}.left-\[13\.20\%\]{left:13.2%}.left-\[1495px\]{left:1495px}.left-\[18px\]{left:18px}.left-\[21\.21\%\]{left:21.21%}.left-\[21\.98\%\]{left:21.98%}.left-\[23\.37\%\]{left:23.37%}.left-\[248px\]{left:248px}.left-\[27\.71\%\]{left:27.71%}.left-\[292px\]{left:292px}.left-\[295px\]{left:295px}.left-\[298px\]{left:298px}.left-\[335px\]{left:335px}.left-\[34\.98\%\]{left:34.98%}.left-\[35\.13\%\]{left:35.13%}.left-\[362px\]{left:362px}.left-\[363px\]{left:363px}.left-\[39\.39\%\]{left:39.39%}.left-\[40\.01\%\]{left:40.01%}.left-\[440px\]{left:440px}.left-\[47\.55\%\]{left:47.55%}.left-\[48\.39\%\]{left:48.39%}.left-\[484px\]{left:484px}.left-\[489px\]{left:489px}.left-\[49\.55\%\]{left:49.55%}.left-\[49px\]{left:49px}.left-\[507px\]{left:507px}.left-\[52\.64\%\]{left:52.64%}.left-\[540px\]{left:540px}.left-\[54px\]{left:54px}.left-\[60\.31\%\]{left:60.31%}.left-\[62\.78\%\]{left:62.78%}.left-\[65\.26\%\]{left:65.26%}.left-\[70\.88\%\]{left:70.88%}.left-\[77\.87\%\]{left:77.87%}.left-\[78\.01\%\]{left:78.01%}.left-\[7px\]{left:7px}.left-\[81\.52\%\]{left:81.52%}.left-\[83\.65\%\]{left:83.65%}.left-\[83\.68\%\]{left:83.68%}.left-\[888px\]{left:888px}.left-\[9\.13\%\]{left:9.13%}.left-\[92\.72\%\]{left:92.72%}.left-\[93\.10\%\]{left:93.1%}.left-\[94\.08\%\]{left:94.08%}.left-\[calc\(50\.00\%_\+_188px\)\]{left:calc(50% + 188px)}.left-\[calc\(50\.00\%_\+_221px\)\]{left:calc(50% + 221px)}.left-\[calc\(50\.00\%_\+_28px\)\]{left:calc(50% + 28px)}.left-\[calc\(50\.00\%_\+_291px\)\]{left:calc(50% + 291px)}.left-\[calc\(50\.00\%_\+_406px\)\]{left:calc(50% + 406px)}.left-\[calc\(50\.00\%_-_120px\)\]{left:calc(50% - 120px)}.left-\[calc\(50\.00\%_-_135px\)\]{left:calc(50% - 135px)}.left-\[calc\(50\.00\%_-_154px\)\]{left:calc(50% - 154px)}.left-\[calc\(50\.00\%_-_157px\)\]{left:calc(50% - 157px)}.left-\[calc\(50\.00\%_-_162px\)\]{left:calc(50% - 162px)}.left-\[calc\(50\.00\%_-_176px\)\]{left:calc(50% - 176px)}.left-\[calc\(50\.00\%_-_177px\)\]{left:calc(50% - 177px)}.left-\[calc\(50\.00\%_-_180px\)\]{left:calc(50% - 180px)}.left-\[calc\(50\.00\%_-_182px\)\]{left:calc(50% - 182px)}.left-\[calc\(50\.00\%_-_188px\)\]{left:calc(50% - 188px)}.left-\[calc\(50\.00\%_-_194px\)\]{left:calc(50% - 194px)}.left-\[calc\(50\.00\%_-_264px\)\]{left:calc(50% - 264px)}.left-\[calc\(50\.00\%_-_298px\)\]{left:calc(50% - 298px)}.left-\[calc\(50\.00\%_-_324px\)\]{left:calc(50% - 324px)}.left-\[calc\(50\.00\%_-_332px\)\]{left:calc(50% - 332px)}.left-\[calc\(50\.00\%_-_342px\)\]{left:calc(50% - 342px)}.left-\[calc\(50\.00\%_-_348px\)\]{left:calc(50% - 348px)}.left-\[calc\(50\.00\%_-_354px\)\]{left:calc(50% - 354px)}.left-\[calc\(50\.00\%_-_355px\)\]{left:calc(50% - 355px)}.left-\[calc\(50\.00\%_-_356px\)\]{left:calc(50% - 356px)}.left-\[calc\(50\.00\%_-_375px\)\]{left:calc(50% - 375px)}.left-\[calc\(50\.00\%_-_408px\)\]{left:calc(50% - 408px)}.left-\[calc\(50\.00\%_-_412px\)\]{left:calc(50% - 412px)}.left-\[calc\(50\.00\%_-_420px\)\]{left:calc(50% - 420px)}.left-\[calc\(50\.00\%_-_422px\)\]{left:calc(50% - 422px)}.left-\[calc\(50\.00\%_-_440px\)\]{left:calc(50% - 440px)}.left-\[calc\(50\.00\%_-_457px\)\]{left:calc(50% - 457px)}.left-\[calc\(50\.00\%_-_469px\)\]{left:calc(50% - 469px)}.left-\[calc\(50\.00\%_-_474px\)\]{left:calc(50% - 474px)}.left-\[calc\(50\.00\%_-_477px\)\]{left:calc(50% - 477px)}.left-\[calc\(50\.00\%_-_598px\)\]{left:calc(50% - 598px)}.left-\[calc\(50\.00\%_-_633px\)\]{left:calc(50% - 633px)}.left-\[calc\(50\.00\%_-_666px\)\]{left:calc(50% - 666px)}.left-\[calc\(50\.00\%_-_68px\)\]{left:calc(50% - 68px)}.left-\[calc\(50\.00\%_-_716px\)\]{left:calc(50% - 716px)}.left-\[calc\(50\.00\%_-_720px\)\]{left:calc(50% - 720px)}.left-\[calc\(50\.00\%_-_722px\)\]{left:calc(50% - 722px)}.left-\[calc\(50\.00\%_-_80px\)\]{left:calc(50% - 80px)}.left-\[calc\(50\.00\%_-_926px\)\]{left:calc(50% - 926px)}.left-\[calc\(50\.00\%_-_960px\)\]{left:calc(50% - 960px)}.top-0{top:0}.top-12{top:3rem}.top-\[10097px\]{top:10097px}.top-\[10902px\]{top:10902px}.top-\[10996px\]{top:10996px}.top-\[11\.65\%\]{top:11.65%}.top-\[11\.89\%\]{top:11.89%}.top-\[11636px\]{top:11636px}.top-\[116px\]{top:116px}.top-\[119px\]{top:119px}.top-\[12\.56\%\]{top:12.56%}.top-\[12\.69\%\]{top:12.69%}.top-\[12\.79\%\]{top:12.79%}.top-\[1248px\]{top:1248px}.top-\[1264px\]{top:1264px}.top-\[13\.06\%\]{top:13.06%}.top-\[13\.12\%\]{top:13.12%}.top-\[14\.43\%\]{top:14.43%}.top-\[147px\]{top:147px}.top-\[161px\]{top:161px}.top-\[17\.58\%\]{top:17.58%}.top-\[17\.63\%\]{top:17.63%}.top-\[172px\]{top:172px}.top-\[179px\]{top:179px}.top-\[17px\]{top:17px}.top-\[18\.59\%\]{top:18.59%}.top-\[180px\]{top:180px}.top-\[19\.82\%\]{top:19.82%}.top-\[19\.87\%\]{top:19.87%}.top-\[22\.05\%\]{top:22.05%}.top-\[22\.06\%\]{top:22.06%}.top-\[23\.07\%\]{top:23.07%}.top-\[238px\]{top:238px}.top-\[239px\]{top:239px}.top-\[2400px\]{top:2400px}.top-\[243px\]{top:243px}.top-\[2672px\]{top:2672px}.top-\[295px\]{top:295px}.top-\[29px\]{top:29px}.top-\[311px\]{top:311px}.top-\[3273px\]{top:3273px}.top-\[329px\]{top:329px}.top-\[331px\]{top:331px}.top-\[3449px\]{top:3449px}.top-\[349px\]{top:349px}.top-\[351px\]{top:351px}.top-\[385px\]{top:385px}.top-\[39\.46\%\]{top:39.46%}.top-\[4\.39\%\]{top:4.39%}.top-\[4\.61\%\]{top:4.61%}.top-\[4245px\]{top:4245px}.top-\[43px\]{top:43px}.top-\[44\.08\%\]{top:44.08%}.top-\[44\.13\%\]{top:44.13%}.top-\[44\.38\%\]{top:44.38%}.top-\[49\.51\%\]{top:49.51%}.top-\[5\.99\%\]{top:5.99%}.top-\[50px\]{top:50px}.top-\[51px\]{top:51px}.top-\[531px\]{top:531px}.top-\[53px\]{top:53px}.top-\[55px\]{top:55px}.top-\[56\.48\%\]{top:56.48%}.top-\[5701px\]{top:5701px}.top-\[5722px\]{top:5722px}.top-\[58px\]{top:58px}.top-\[6523px\]{top:6523px}.top-\[68px\]{top:68px}.top-\[6991px\]{top:6991px}.top-\[7235px\]{top:7235px}.top-\[7414px\]{top:7414px}.top-\[75px\]{top:75px}.top-\[79px\]{top:79px}.top-\[87px\]{top:87px}.top-\[9104px\]{top:9104px}.top-\[calc\(50\.00\%_\+_12px\)\]{top:calc(50% + 12px)}.top-\[calc\(50\.00\%_\+_14px\)\]{top:calc(50% + 14px)}.top-\[calc\(50\.00\%_\+_16px\)\]{top:calc(50% + 16px)}.top-\[calc\(50\.00\%_\+_3190px\)\]{top:calc(50% + 3190px)}.top-\[calc\(50\.00\%_\+_4px\)\]{top:calc(50% + 4px)}.top-\[calc\(50\.00\%_\+_5758px\)\]{top:calc(50% + 5758px)}.top-\[calc\(50\.00\%_\+_6px\)\]{top:calc(50% + 6px)}.top-\[calc\(50\.00\%_\+_8px\)\]{top:calc(50% + 8px)}.top-\[calc\(50\.00\%_-_1052px\)\]{top:calc(50% - 1052px)}.top-\[calc\(50\.00\%_-_108px\)\]{top:calc(50% - 108px)}.top-\[calc\(50\.00\%_-_112px\)\]{top:calc(50% - 112px)}.top-\[calc\(50\.00\%_-_138px\)\]{top:calc(50% - 138px)}.top-\[calc\(50\.00\%_-_141px\)\]{top:calc(50% - 141px)}.top-\[calc\(50\.00\%_-_14px\)\]{top:calc(50% - 14px)}.top-\[calc\(50\.00\%_-_182px\)\]{top:calc(50% - 182px)}.top-\[calc\(50\.00\%_-_18px\)\]{top:calc(50% - 18px)}.top-\[calc\(50\.00\%_-_216px\)\]{top:calc(50% - 216px)}.top-\[calc\(50\.00\%_-_3px\)\]{top:calc(50% - 3px)}.top-\[calc\(50\.00\%_-_46px\)\]{top:calc(50% - 46px)}.top-\[calc\(50\.00\%_-_62px\)\]{top:calc(50% - 62px)}.top-\[calc\(50\.00\%_-_72px\)\]{top:calc(50% - 72px)}.top-\[calc\(50\.00\%_-_80px\)\]{top:calc(50% - 80px)}.top-\[calc\(50\.00\%_-_92px\)\]{top:calc(50% - 92px)}.m-0{margin:0}.-ml-0\.5{margin-left:-.125rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-\[-110px\]{margin-left:-110px}.ml-\[-1420px\]{margin-left:-1420px}.ml-\[-746px\]{margin-left:-746px}.ml-\[-882px\]{margin-left:-882px}.ml-\[-945\.0px\]{margin-left:-945px}.ml-\[1\.0px\]{margin-left:1px}.ml-\[1107px\]{margin-left:1107px}.ml-\[3px\]{margin-left:3px}.ml-\[41px\]{margin-left:41px}.ml-\[49px\]{margin-left:49px}.ml-px{margin-left:1px}.mr-\[-213\.00px\]{margin-right:-213px}.mr-\[1\.02px\]{margin-right:1.02px}.mt-0\.5{margin-top:.125rem}.mt-14{margin-top:3.5rem}.mt-6{margin-top:1.5rem}.mt-\[-0\.50px\],.mt-\[-0\.5px\]{margin-top:-.5px}.mt-\[-1\.00px\],.mt-\[-1px\]{margin-top:-1px}.mt-\[147px\]{margin-top:147px}.mt-\[349px\]{margin-top:349px}.mt-\[9px\]{margin-top:9px}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[11\.93\]{aspect-ratio:11.93}.aspect-\[12\.29\]{aspect-ratio:12.29}.aspect-\[12\.39\]{aspect-ratio:12.39}.aspect-\[13\.67\]{aspect-ratio:13.67}.aspect-\[1\]{aspect-ratio:1}.h-0{height:0}.h-11{height:2.75rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-80{height:20rem}.h-\[100\.73\%\]{height:100.73%}.h-\[1047px\]{height:1047px}.h-\[104px\]{height:104px}.h-\[105px\]{height:105px}.h-\[113px\]{height:113px}.h-\[120px\]{height:120px}.h-\[123px\]{height:123px}.h-\[1256px\]{height:1256px}.h-\[13477px\]{height:13477px}.h-\[135px\]{height:135px}.h-\[143px\]{height:143px}.h-\[146px\]{height:146px}.h-\[1548px\]{height:1548px}.h-\[1559px\]{height:1559px}.h-\[163px\]{height:163px}.h-\[164px\]{height:164px}.h-\[165px\]{height:165px}.h-\[166px\]{height:166px}.h-\[173px\]{height:173px}.h-\[17px\]{height:17px}.h-\[180px\]{height:180px}.h-\[183px\]{height:183px}.h-\[184px\]{height:184px}.h-\[191px\]{height:191px}.h-\[194px\]{height:194px}.h-\[19px\]{height:19px}.h-\[212px\]{height:212px}.h-\[216\.48px\]{height:216.48px}.h-\[216px\]{height:216px}.h-\[220px\]{height:220px}.h-\[222px\]{height:222px}.h-\[223px\]{height:223px}.h-\[22px\]{height:22px}.h-\[25\.23\%\]{height:25.23%}.h-\[25\.87\%\]{height:25.87%}.h-\[258px\]{height:258px}.h-\[276px\]{height:276px}.h-\[280px\]{height:280px}.h-\[282px\]{height:282px}.h-\[284px\]{height:284px}.h-\[287px\]{height:287px}.h-\[29\.32\%\]{height:29.32%}.h-\[320px\]{height:320px}.h-\[324px\]{height:324px}.h-\[352px\]{height:352px}.h-\[378px\]{height:378px}.h-\[383px\]{height:383px}.h-\[395px\]{height:395px}.h-\[39px\]{height:39px}.h-\[400px\]{height:400px}.h-\[433px\]{height:433px}.h-\[455px\]{height:455px}.h-\[472px\]{height:472px}.h-\[475px\]{height:475px}.h-\[50\.49\%\]{height:50.49%}.h-\[501px\]{height:501px}.h-\[52px\]{height:52px}.h-\[53px\]{height:53px}.h-\[55\.62\%\]{height:55.62%}.h-\[55\.87\%\]{height:55.87%}.h-\[55\.92\%\]{height:55.92%}.h-\[60\.54\%\]{height:60.54%}.h-\[600px\]{height:600px}.h-\[609px\]{height:609px}.h-\[60px\]{height:60px}.h-\[656px\]{height:656px}.h-\[67px\]{height:67px}.h-\[693px\]{height:693px}.h-\[696px\]{height:696px}.h-\[74px\]{height:74px}.h-\[77\.94\%\]{height:77.94%}.h-\[77\.95\%\]{height:77.95%}.h-\[80\.13\%\]{height:80.13%}.h-\[80\.18\%\]{height:80.18%}.h-\[804px\]{height:804px}.h-\[82\.37\%\]{height:82.37%}.h-\[82\.42\%\]{height:82.42%}.h-\[82px\]{height:82px}.h-\[837px\]{height:837px}.h-\[84px\]{height:84px}.h-\[85\.57\%\]{height:85.57%}.h-\[855px\]{height:855px}.h-\[86\.88\%\]{height:86.88%}.h-\[86\.94\%\]{height:86.94%}.h-\[87\.21\%\]{height:87.21%}.h-\[87\.31\%\]{height:87.31%}.h-\[87\.44\%\]{height:87.44%}.h-\[870px\]{height:870px}.h-\[88\.11\%\]{height:88.11%}.h-\[88\.35\%\]{height:88.35%}.h-\[900px\]{height:900px}.h-\[90px\]{height:90px}.h-\[91px\]{height:91px}.h-\[94\.01\%\]{height:94.01%}.h-\[95\.39\%\]{height:95.39%}.h-\[95\.61\%\]{height:95.61%}.h-\[95px\]{height:95px}.h-\[980px\]{height:980px}.h-\[984px\]{height:984px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.min-h-\[1522px\]{min-height:1522px}.min-h-\[2070px\]{min-height:2070px}.min-h-\[656px\]{min-height:656px}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-\[101\.05\%\]{width:101.05%}.w-\[101\.14\%\]{width:101.14%}.w-\[101\.70\%\]{width:101.7%}.w-\[1086px\]{width:1086px}.w-\[1087px\]{width:1087px}.w-\[1088px\]{width:1088px}.w-\[11\.69\%\]{width:11.69%}.w-\[1195px\]{width:1195px}.w-\[1196px\]{width:1196px}.w-\[120px\]{width:120px}.w-\[1250px\]{width:1250px}.w-\[1266px\]{width:1266px}.w-\[129px\]{width:129px}.w-\[13\.43\%\]{width:13.43%}.w-\[13\.53\%\]{width:13.53%}.w-\[1331px\]{width:1331px}.w-\[1425px\]{width:1425px}.w-\[1439px\]{width:1439px}.w-\[1441px\]{width:1441px}.w-\[1442px\]{width:1442px}.w-\[1443px\]{width:1443px}.w-\[158px\]{width:158px}.w-\[165px\]{width:165px}.w-\[1708px\]{width:1708px}.w-\[171px\]{width:171px}.w-\[177px\]{width:177px}.w-\[18\.48\%\]{width:18.48%}.w-\[181px\]{width:181px}.w-\[1843px\]{width:1843px}.w-\[1884px\]{width:1884px}.w-\[19\.89\%\]{width:19.89%}.w-\[190px\]{width:190px}.w-\[1920px\]{width:1920px}.w-\[20\.66\%\]{width:20.66%}.w-\[204px\]{width:204px}.w-\[21\.99\%\]{width:21.99%}.w-\[22\.13\%\]{width:22.13%}.w-\[22\.79\%\]{width:22.79%}.w-\[222px\]{width:222px}.w-\[236px\]{width:236px}.w-\[265px\]{width:265px}.w-\[266px\]{width:266px}.w-\[270px\]{width:270px}.w-\[286px\]{width:286px}.w-\[29\.12\%\]{width:29.12%}.w-\[300px\]{width:300px}.w-\[319px\]{width:319px}.w-\[320px\]{width:320px}.w-\[323px\]{width:323px}.w-\[330px\]{width:330px}.w-\[33px\]{width:33px}.w-\[34\.74\%\]{width:34.74%}.w-\[347px\]{width:347px}.w-\[348px\]{width:348px}.w-\[350px\]{width:350px}.w-\[352px\]{width:352px}.w-\[354px\]{width:354px}.w-\[355px\]{width:355px}.w-\[360px\]{width:360px}.w-\[361px\]{width:361px}.w-\[362px\]{width:362px}.w-\[364px\]{width:364px}.w-\[37\.22\%\]{width:37.22%}.w-\[371px\]{width:371px}.w-\[374px\]{width:374px}.w-\[375px\]{width:375px}.w-\[385px\]{width:385px}.w-\[388px\]{width:388px}.w-\[389px\]{width:389px}.w-\[39\.69\%\]{width:39.69%}.w-\[414px\]{width:414px}.w-\[415px\]{width:415px}.w-\[417px\]{width:417px}.w-\[423px\]{width:423px}.w-\[426px\]{width:426px}.w-\[427px\]{width:427px}.w-\[429px\]{width:429px}.w-\[441px\]{width:441px}.w-\[457px\]{width:457px}.w-\[469px\]{width:469px}.w-\[47\.36\%\]{width:47.36%}.w-\[479px\]{width:479px}.w-\[497px\]{width:497px}.w-\[5\.92\%\]{width:5.92%}.w-\[50\.45\%\]{width:50.45%}.w-\[51\.61\%\]{width:51.61%}.w-\[52\.45\%\]{width:52.45%}.w-\[527px\]{width:527px}.w-\[559px\]{width:559px}.w-\[561px\]{width:561px}.w-\[589px\]{width:589px}.w-\[59\.99\%\]{width:59.99%}.w-\[592px\]{width:592px}.w-\[596px\]{width:596px}.w-\[6\.90\%\]{width:6.9%}.w-\[60\.61\%\]{width:60.61%}.w-\[617\.34px\]{width:617.34px}.w-\[617px\]{width:617px}.w-\[620px\]{width:620px}.w-\[625px\]{width:625px}.w-\[627px\]{width:627px}.w-\[635px\]{width:635px}.w-\[64\.87\%\]{width:64.87%}.w-\[646px\]{width:646px}.w-\[647px\]{width:647px}.w-\[649px\]{width:649px}.w-\[65\.02\%\]{width:65.02%}.w-\[681px\]{width:681px}.w-\[683px\]{width:683px}.w-\[692px\]{width:692px}.w-\[696px\]{width:696px}.w-\[7\.28\%\]{width:7.28%}.w-\[705px\]{width:705px}.w-\[709px\]{width:709px}.w-\[711px\]{width:711px}.w-\[712px\]{width:712px}.w-\[713px\]{width:713px}.w-\[72\.29\%\]{width:72.29%}.w-\[728px\]{width:728px}.w-\[76\.63\%\]{width:76.63%}.w-\[78\.02\%\]{width:78.02%}.w-\[78\.79\%\]{width:78.79%}.w-\[798px\]{width:798px}.w-\[811px\]{width:811px}.w-\[815px\]{width:815px}.w-\[820px\]{width:820px}.w-\[841px\]{width:841px}.w-\[845px\]{width:845px}.w-\[86\.80\%\]{width:86.8%}.w-\[876px\]{width:876px}.w-\[88\.46\%\]{width:88.46%}.w-\[880px\]{width:880px}.w-\[90\.87\%\]{width:90.87%}.w-\[941px\]{width:941px}.w-\[946px\]{width:946px}.w-\[948px\]{width:948px}.w-\[952px\]{width:952px}.w-\[954px\]{width:954px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-\[1086px\]{min-width:1086px}.min-w-\[1196px\]{min-width:1196px}.min-w-\[1439px\]{min-width:1439px}.min-w-\[1440px\]{min-width:1440px}.min-w-\[1884\.02px\]{min-width:1884.02px}.min-w-\[1920px\]{min-width:1920px}.min-w-\[388px\]{min-width:388px}.min-w-\[617px\]{min-width:617px}.min-w-\[647px\]{min-width:647px}.min-w-\[876px\]{min-width:876px}.min-w-\[946px\]{min-width:946px}.flex-\[0_0_auto\]{flex:0 0 auto}.flex-none{flex:none}.shrink-0{flex-shrink:0}.-rotate-90{--tw-rotate:-90deg}.-rotate-90,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.rotate-90{--tw-rotate:90deg}.rotate-90,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.gap-12{gap:3rem}.gap-14{gap:3.5rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-\[117px\]{gap:117px}.gap-\[1322px\]{gap:1322px}.gap-\[168px\]{gap:168px}.gap-\[211px\]{gap:211px}.gap-\[254px\]{gap:254px}.gap-\[33px\]{gap:33px}.gap-\[365px\]{gap:365px}.gap-\[424px\]{gap:424px}.gap-\[436px\]{gap:436px}.gap-\[481px\]{gap:481px}.gap-\[78px\]{gap:78px}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-solid{border-style:solid}.border-\[\#ffffff40\]{border-color:#ffffff40}.bg-\[\#f05f24\]{--tw-bg-opacity:1;background-color:rgb(240 95 36/var(--tw-bg-opacity,1))}.bg-focus-flame{background-color:var(--focus-flame)}.bg-light-gray{background-color:var(--light-gray)}.bg-\[linear-gradient\(180deg\2c rgba\(82\2c 84\2c 85\2c 0\.5\)_0\%\2c rgba\(82\2c 84\2c 85\2c 0\)_100\%\)\]{background-image:linear-gradient(180deg,rgba(82,84,85,.5),rgba(82,84,85,0))}.bg-\[linear-gradient\(180deg\2c rgba\(82\2c 84\2c 85\2c 1\)_0\%\2c rgba\(82\2c 84\2c 85\2c 0\.05\)_100\%\)\]{background-image:linear-gradient(180deg,#525455,rgba(82,84,85,.05))}.bg-\[linear-gradient\(270deg\2c rgba\(255\2c 255\2c 255\2c 0\.5\)_0\%\2c rgba\(208\2c 208\2c 208\2c 0\.5\)_46\%\2c rgba\(153\2c 153\2c 153\2c 0\.5\)_100\%\)\]{background-image:linear-gradient(270deg,hsla(0,0%,100%,.5),hsla(0,0%,82%,.5) 46%,hsla(0,0%,60%,.5))}.bg-\[url\(\.\/assets\/calendar\/mask-group-9\.png\)\]{background-image:url(assets/calendar/mask-group-9.png)}.bg-\[url\(\.\/assets\/home\/mask-group-14\.png\)\]{background-image:url(assets/home/mask-group-14.png)}.bg-\[url\(\.\/assets\/home\/mask-group-16\.png\)\]{background-image:url(assets/home/mask-group-16.png)}.bg-\[url\(\.\/assets\/home\/mask-group-17\.png\)\]{background-image:url(assets/home/mask-group-17.png)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-\[100\%_100\%\]{background-position:100% 100%}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-\[52px\]{padding:52px}.px-\[21px\]{padding-left:21px;padding-right:21px}.px-\[41px\]{padding-left:41px;padding-right:41px}.px-\[49px\]{padding-left:49px;padding-right:49px}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-\[52px\]{padding-top:52px;padding-bottom:52px}.py-\[53px\]{padding-top:53px;padding-bottom:53px}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-\[120px\]{font-size:120px}.text-\[164px\]{font-size:164px}.text-\[32px\]{font-size:32px}.text-\[56px\]{font-size:56px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-10{line-height:2.5rem}.leading-\[100px\]{line-height:100px}.leading-\[130px\]{line-height:130px}.leading-\[30px\]{line-height:30px}.leading-\[34px\]{line-height:34px}.leading-\[56px\]{line-height:56px}.leading-\[66px\]{line-height:66px}.leading-\[74px\]{line-height:74px}.leading-\[96px\]{line-height:96px}.leading-\[normal\]{line-height:normal}.tracking-\[-0\.72px\]{letter-spacing:-.72px}.tracking-\[-1\.38px\]{letter-spacing:-1.38px}.tracking-\[-1\.88px\]{letter-spacing:-1.88px}.tracking-\[-1\.92px\]{letter-spacing:-1.92px}.tracking-\[-14\.76px\]{letter-spacing:-14.76px}.tracking-\[-2\.24px\]{letter-spacing:-2.24px}.tracking-\[-3\.36px\]{letter-spacing:-3.36px}.tracking-\[-5\.53px\]{letter-spacing:-5.53px}.tracking-\[-5\.76px\]{letter-spacing:-5.76px}.tracking-\[-7\.20px\],.tracking-\[-7\.2px\]{letter-spacing:-7.2px}.tracking-\[-8\.64px\]{letter-spacing:-8.64px}.tracking-\[0\.40px\],.tracking-\[0\.4px\]{letter-spacing:.4px}.tracking-\[0\.80px\],.tracking-\[0\.8px\]{letter-spacing:.8px}.tracking-\[0\]{letter-spacing:0}.text-\[\#383e42\]{--tw-text-opacity:1;color:rgb(56 62 66/var(--tw-text-opacity,1))}.text-\[\#525455\]{--tw-text-opacity:1;color:rgb(82 84 85/var(--tw-text-opacity,1))}.text-\[\#f05f24\]{--tw-text-opacity:1;color:rgb(240 95 36/var(--tw-text-opacity,1))}.text-black{color:var(--black)}.text-charcoal{color:var(--charcoal)}.text-focus-flame{color:var(--focus-flame)}.text-light-gray{color:var(--light-gray)}.text-transparent{color:transparent}.text-white{color:var(--white)}.opacity-15{opacity:.15}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow-\[0px_0px_0px_8px_\#f05f2426\]{--tw-shadow:0px 0px 0px 8px #f05f2426;--tw-shadow-colored:0px 0px 0px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[12\.5px\]{--tw-backdrop-blur:blur(12.5px)}.backdrop-blur-\[12\.5px\],.backdrop-brightness-\[100\%\]{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-brightness-\[100\%\]{--tw-backdrop-brightness:brightness(100%)}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.\[-webkit-backdrop-filter\:blur\(12\.5px\)_brightness\(100\%\)\]{-webkit-backdrop-filter:blur(12.5px) brightness(100%)}.\[-webkit-background-clip\:text\]{-webkit-background-clip:text}.\[-webkit-text-fill-color\:transparent\]{-webkit-text-fill-color:transparent}.\[font-family\:\'Josefin_Sans\'\2c Helvetica\]{font-family:Josefin Sans,Helvetica}.\[font-family\:\'Saira\'\2c Helvetica\]{font-family:Saira,Helvetica}.\[text-fill-color\:transparent\]{text-fill-color:transparent}:root{--black:#0a0b0c;--charcoal:#383e42;--focus-flame:#f05f24;--gray-100:#f8f9fc;--gray-150:#f2f4f8;--gray-200:#e3e7ed;--gray-250:#ced3de;--gray-300:#969fb0;--gray-350:#6c7689;--gray-400:#4d576a;--gray-450:#30394b;--gray-50:#f9fafb;--gray-500:#212a3b;--gray-550:#141b2a;--gray-600:#0b111d;--light-gray:#d4cfc9;--steady-slate:#525455;--white:#fff;--animate-spin:spin 1s linear infinite}.animate-fade-in{animation:fade-in 1s var(--animation-delay,0s) ease forwards}.animate-fade-up{animation:fade-up 1s var(--animation-delay,0s) ease forwards}.animate-marquee{animation:marquee var(--duration) infinite linear}.animate-marquee-vertical{animation:marquee-vertical var(--duration) linear infinite}.animate-shimmer{animation:shimmer 8s infinite}.animate-spin{animation:var(--animate-spin)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes image-glow{0%{opacity:0;animation-timing-function:cubic-bezier(.74,.25,.76,1)}10%{opacity:.7;animation-timing-function:cubic-bezier(.12,.01,.08,.99)}to{opacity:.4}}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes shimmer{0%,90%,to{background-position:calc(-100% - var(--shimmer-width)) 0}30%,60%{background-position:calc(100% + var(--shimmer-width)) 0}}@keyframes marquee{0%{transform:translate(0)}to{transform:translateX(calc(-100% - var(--gap)))}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - var(--gap)))}}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-\[\#383e42\]:focus-visible{outline-color:#383e42}.focus-visible\:outline-\[\#f05f24\]:focus-visible{outline-color:#f05f24}.focus-visible\:outline-focus-flame:focus-visible{outline-color:var(--focus-flame)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-focus-flame:focus-visible{--tw-ring-color:var(--focus-flame)}.focus-visible\:ring-offset-4:focus-visible{--tw-ring-offset-width:4px}
@font-face {
  font-family: 'Saira';
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
  font-display: swap;
  src: url(./assets/fonts/saira-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Saira';
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-display: swap;
  src: url(./assets/fonts/saira-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Saira';
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
  font-display: swap;
  src: url(./assets/fonts/saira-2.ttf) format('truetype');
}

@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./assets/fonts/josefin-sans-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(./assets/fonts/josefin-sans-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./assets/fonts/josefin-sans-2.ttf) format('truetype');
}

html{scroll-behavior:smooth}body{margin:0;background:#d4cfc9}button,a,input{touch-action:manipulation}button,a{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #f05f24;outline-offset:4px}main>header{z-index:20}main>header img[src$="group-4.png"]{width:276.5px;height:34px;object-fit:contain;object-position:left}main>header nav{z-index:1}
[data-page="checkout"] section[aria-label="Selected training details"] dd,[data-page="confirmation"] section[aria-label="Receipt details"] dd{white-space:nowrap}
[data-page="checkout"] main{height:2527px}
[data-page="checkout"] main>img:first-child{top:1527px}
/* Exported text bounds describe glyph height; lists need the corresponding smaller gap. */
[data-page="course"] li>span[aria-hidden="true"],[data-page="calendar"] li>span[aria-hidden="true"]{margin-top:8px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Calendar text is native; preserve the exported card geometry. */
.session-card{position:relative;padding:0!important;display:block!important}
.session-card>div:first-child{position:absolute;left:35px;top:40px;width:313px;height:347px;margin:0!important;display:block}
.session-card>div:first-child>div:first-child{position:relative;width:313px;height:347px;margin:0!important;gap:48px}
.session-card>div:first-child>div:first-child>div:first-child{gap:24px}
.session-card>div:first-child>div:first-child>div:first-child>p{height:17px;flex:none;line-height:34px}
.session-card h3{height:54px;line-height:32px}
.session-card dl{gap:10px;width:313px}
.session-card dl>div{gap:16px;min-height:24px}
.session-card dd{width:273px!important;line-height:30px!important;min-height:24px}
.session-card dl>div:not(:nth-child(4)) dd{height:24px}
.session-card:not(.session-dark)>div:nth-child(2),.session-dark>div:first-child>div:nth-child(2){position:absolute;left:35px;top:443px;width:312px;height:135px;margin:0!important;gap:24px}
.session-dark>div:first-child>div:nth-child(2){left:0;top:403px}
.session-dark>div:first-child>section{position:absolute;left:-8px;top:591px;width:330px;height:416px;margin:0;gap:24px}
.session-dark ul{gap:16px!important}
.session-dark ul li{line-height:24px}
.session-dark ul li>span:first-child{margin-top:6px!important}
ul:not(nav ul){row-gap:8px}
.registration-status{position:absolute;top:1240px;left:calc(50% - 500px);width:1000px;font:20px/30px Saira,sans-serif;color:#383e42;text-align:center}.registration-status:empty{display:none}.site-footer{position:absolute;top:var(--footer-top);left:0;width:1920px;height:1000px}.footer-native{display:none}.footer-hotspots>*{position:absolute;background:none;border:none}.footer-hotspots .footer-cta{left:1310px;top:176px;width:274px;height:56px}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:#fff;padding:12px;color:#383e42}.skip-link:focus{top:8px}.mobile-header{display:none}.site-dialog{border:1px solid #525455;border-radius:12px;background:#d4cfc9;color:#383e42;width:min(560px,calc(100% - 32px));padding:40px;font:18px/1.6 Saira,sans-serif}.site-dialog::backdrop{background:#0a0b0c99}.site-dialog h2{font:500 32px/1.2 'Josefin Sans',sans-serif;margin-bottom:20px}.dialog-close{position:absolute;right:12px;top:6px;font-size:28px}.brand-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 21px;min-height:44px;background:#f05f24;color:white;border:1px solid #ffffff40;border-radius:6px;box-shadow:0 0 0 8px #f05f2426;font:500 18px/1.3 Saira,sans-serif;text-decoration:none}
@media(min-width:1200px) and (max-width:1919.98px){.layout-ready main{width:1920px;min-width:1920px;zoom:var(--accuracy-desktop-scale,1)}}
@media(min-width:1920px){main{max-width:1920px;margin-inline:auto}.layout-ready main{zoom:var(--accuracy-main-scale,1)}}
@media(max-width:1199.98px){
html.layout-ready, .layout-ready body{width:100%;overflow-x:clip}.layout-ready main{width:100%;min-width:0!important;height:auto!important;display:flex;flex-direction:column;overflow:visible;gap:64px;padding:32px 24px 0;isolation:isolate}
.layout-ready main>header{display:none}.mobile-header{position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:22px 24px;background:#383e42;min-height:80px;color:white}.mobile-header img{width:220px;height:auto;max-width:65vw;filter:brightness(0) invert(1)}.mobile-header button{font:500 16px Saira,sans-serif;padding:10px;border:1px solid #d4cfc966;border-radius:6px}.mobile-header nav{position:absolute;top:100%;left:0;right:0;padding:16px 24px;background:#383e42}.mobile-header nav:not([hidden]){display:grid;gap:16px}.mobile-header nav a{font:18px Saira,sans-serif;padding:6px}
.layout-ready main [data-flow]{order:var(--flow-order,0);max-width:100%;min-width:0!important;flex-shrink:1}
.layout-ready main [data-flow="decoration"],.layout-ready main [data-flow="empty"]{display:none!important}
.layout-ready main [data-flow="stack"],.layout-ready main [data-flow="columns"]{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0;display:flex!important;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important;gap:24px;transform:none!important}
.layout-ready main [data-flow="columns"]{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:24px;align-items:start!important}
.layout-ready main [data-flow="inline"]{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;display:flex;flex-direction:row;align-items:center;gap:12px;transform:none!important;flex-wrap:wrap}
.layout-ready main [data-flow="text"]{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;font-size:var(--mobile-size)!important;line-height:1.4!important;letter-spacing:normal!important;white-space:normal!important;transform:none!important;display:block!important}
.layout-ready main h1[data-flow],.layout-ready main h2[data-flow]{line-height:1.05!important;letter-spacing:-.045em!important}.layout-ready main [data-flow="text"] span{letter-spacing:inherit!important}
.layout-ready main [data-flow="image"]{position:relative!important;inset:auto!important;width:100%;height:auto!important;margin:0!important;object-fit:contain;transform:none!important}.layout-ready main [data-flow="icon"]{position:relative!important;inset:auto!important;flex:none;max-width:32px;max-height:32px;margin:0!important}.layout-ready main [data-flow="bullet"]{position:relative!important;inset:auto!important;flex:none;margin-top:6px!important}
.layout-ready main [data-flow="control"]{position:relative!important;inset:auto!important;min-width:0!important;max-width:100%;height:auto;min-height:44px;margin:0!important;transform:none!important;white-space:normal!important}.layout-ready main button{align-self:flex-start}.layout-ready main button span{white-space:normal!important}.layout-ready main input{font-size:16px!important;min-height:60px;max-width:100%}.layout-ready main label{width:100%!important;display:flex;align-items:center;gap:12px}.layout-ready main label input[type="checkbox"]{min-height:0}
.layout-ready main li[data-flow]{display:flex!important;flex-direction:row;align-items:flex-start!important;gap:12px;flex-wrap:nowrap}.layout-ready main ul[data-flow],.layout-ready main ol[data-flow]{gap:12px!important}.layout-ready main [data-background="true"]{background-size:100% 100%;padding:24px!important;border-radius:12px}
.layout-ready main .session-card{width:100%!important;height:1085px!important;position:relative!important;margin:0!important;background-size:100% 100%}.layout-ready main .session-card *{order:initial}.layout-ready main .session-card>div:first-child{position:relative!important;inset:auto!important;width:100%!important;padding:32px!important;gap:32px}.layout-ready main .session-card>div:first-child>div:first-child{width:100%;height:auto!important;gap:30px}.layout-ready main .session-card>div:first-child>div:first-child>div:first-child{gap:12px}.layout-ready main .session-card dl{gap:10px!important}.layout-ready main .session-card dl>div{display:flex!important;flex-direction:row!important;gap:14px;padding:0!important}.layout-ready main .session-card dd{width:auto!important;font-size:18px!important}.layout-ready main .session-card p{font-size:16px!important}.layout-ready main .session-card h3{font-size:28px!important}.layout-ready main .session-card:not(.session-dark)>div:nth-child(2){top:443px!important;left:8%!important;width:84%!important}.layout-ready main .session-card.session-dark{height:auto!important;min-height:1085px}.layout-ready main .session-dark>div:first-child>div:nth-child(2),.layout-ready main .session-dark>div:first-child>section{position:relative!important;top:auto!important;left:auto!important;width:100%!important;margin:0!important;gap:20px}.layout-ready main .session-card button{width:100%!important}.layout-ready main .session-dark ul li>span:last-child{font-size:16px!important}
.layout-ready .site-footer{position:relative;top:auto;left:auto;width:calc(100% + 48px);max-width:none;height:auto;margin:0 -24px;background:#0a0b0c;color:white;order:999999999}.footer-hotspots{display:none}.footer-native{display:block;padding:56px 24px}.footer-intro{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px;margin-bottom:48px}.footer-intro h2{font:600 40px/1.1 'Josefin Sans',sans-serif;margin-bottom:16px}.footer-intro h2 span{color:#f05f24}.footer-native p,.footer-native label{font:300 16px/1.5 Saira,sans-serif;color:#d4cfc9}.footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px}.footer-columns>p{max-width:300px}.footer-columns h3{font:400 14px Saira,sans-serif;color:#d4cfc9;margin-bottom:16px}.footer-columns nav{display:flex;flex-direction:column;gap:12px;font:16px Saira,sans-serif}.newsletter input{color:white;background:transparent;border-bottom:1px solid #525455;width:90%;padding:12px 0;font:16px Saira,sans-serif}.newsletter button{color:#f05f24;font-size:24px}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;margin-top:48px;font:14px Saira,sans-serif;color:#d4cfc9}.footer-bottom p{font-size:12px}
.layout-ready .registration-status{position:relative;inset:auto;width:100%;font-size:16px}.layout-ready main>img[src$="mask-group.png"]:last-of-type{max-height:none}
}
.mobile-panel,.mobile-transformation{display:none}
@media(max-width:1199.98px){
.layout-ready main [data-footer-image],.layout-ready main [data-mobile-hide]{display:none!important}
.layout-ready main [data-flow="text"]>span{display:inline!important;position:static!important;margin:0!important;line-height:inherit!important;font-size:inherit!important}
.layout-ready main [data-flow="control"]:is(button,a),.layout-ready main [data-flow="control"]:is(button,a)>span,.layout-ready main [data-flow="control"]:is(button,a)>span>span{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;width:auto!important;height:auto!important;position:static!important;flex-wrap:nowrap!important}.layout-ready main [data-flow="control"] img{flex-shrink:0}
.layout-ready main li[data-flow]:not([data-bullet-item]){display:block!important}.layout-ready main ol>li{order:initial!important}
.layout-ready main .responsive-artwork{position:relative!important;inset:auto!important;width:var(--art-width)!important;height:var(--art-height)!important;margin:0 auto!important;max-width:none!important;zoom:var(--art-scale);flex-shrink:0!important;order:initial!important}
.layout-ready main [data-flow="media"]{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;aspect-ratio:var(--design-width) / calc(var(--design-height) / 1px);background-size:100% 100%;min-height:320px;margin:0!important}
.layout-ready main .mobile-panel{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding:40px 24px;margin-inline:-24px;width:calc(100% + 48px);max-width:none;position:relative}.mobile-panel h1,.mobile-panel h2,.mobile-transformation{font:600 clamp(36px,9vw,64px)/1.05 'Josefin Sans',sans-serif;letter-spacing:-.055em}.mobile-panel h3{font:600 32px/1.2 'Josefin Sans',sans-serif;margin-top:40px}.mobile-panel h1 span,.mobile-panel h2 span,.mobile-transformation span{color:#f05f24}.mobile-panel p{font:400 18px/1.6 Saira,sans-serif;max-width:720px}.mobile-panel .eyebrow{font:400 14px Saira,sans-serif;letter-spacing:.05em;display:flex;gap:14px;align-items:center}.mobile-panel .eyebrow::before{content:'';width:10px;height:10px;background:#f05f24}.mobile-hero{min-height:600px;justify-content:flex-end;background:linear-gradient(0deg,#0a0b0cec,#0a0b0c33),url('./assets/home/hero-photo.png') center/cover;color:white;margin-top:-32px}.mobile-hero p{max-width:460px}.mobile-responsibility{background:#0a0b0c;color:white}.mobile-responsibility p{color:#d4cfc9}.mobile-authorized{background:#383e42;color:white}.mobile-authorized .eyebrow{margin-top:32px}.layout-ready main .mobile-transformation{display:block;order:-1}.layout-ready main section[aria-labelledby="transformation-heading"]>div:first-of-type{display:none!important}
.layout-ready main [data-flow="inline"]>span[data-flow="text"]{display:inline!important}
.layout-ready main section[aria-label="Selected training details"] dl>div,.layout-ready main section[aria-label="Receipt details"] dl>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}
.layout-ready main section[aria-label="Selected training details"] dd span,.layout-ready main section[aria-label="Receipt details"] dd span{font-size:inherit!important;display:inline!important}.layout-ready main form[id="registration-form"]{gap:32px}
}
[class*="Saira"].font-normal{font-weight:300}
[data-page="home"] [class*="Saira"].font-normal,[data-page="courses"] [class*="Saira"].font-normal,[data-page="course"] [class*="Saira"].font-normal{font-weight:400}
@media(min-width:1200px){section:is([aria-labelledby="eligibility-language-heading"],[aria-labelledby="training-delivery-heading"]) li{align-items:flex-start}section:is([aria-labelledby="eligibility-language-heading"],[aria-labelledby="training-delivery-heading"]) li p{margin-top:0;transform:translateY(-8px)}}
[data-page="checkout"] main{background:linear-gradient(#d4cfc9 0 2380px,#fff 2380px)}
[data-page="checkout"] main>img:first-child{top:1380px}
@media(min-width:1200px){#checkout-title,#receipt-heading{transform:translateY(-8px)}}
@media(max-width:1199.98px){
.layout-ready [data-page="checkout"] main{background:#d4cfc9}
.layout-ready main [aria-hidden="true"][data-flow="text"]:not(span){display:none!important}
.mobile-course-hero img{width:110px;height:110px;object-fit:contain}.mobile-course-hero p{max-width:500px}
.layout-ready main form>section>div>div:first-child{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.layout-ready main form>section>div>div:first-child h2{font-size:28px!important}.layout-ready main form>section{background:#dad5cf;border-radius:12px;padding:24px!important}.layout-ready main form>section label input{font-size:16px!important;min-height:62px}.layout-ready main form>section label{width:100%!important}
.layout-ready main label:has(input[type="checkbox"]){display:flex!important;align-items:flex-start!important;gap:16px!important}.layout-ready main label:has(input[type="checkbox"])>span:first-of-type{display:block!important;min-width:28px!important;width:28px;height:28px!important;flex-shrink:0}.layout-ready main label:has(input[type="checkbox"])>span:last-of-type{font-size:20px!important;line-height:1.4!important}
.layout-ready main [data-flow="root"]>.session-card{order:initial}
.layout-ready main .session-card.session-dark button{width:100%!important;display:flex!important}.layout-ready main .session-card dl img{width:24px!important;height:24px!important}
.layout-ready main section[aria-label="Selected training details"]>div,.layout-ready main section[aria-label="Receipt details"] dl{padding:24px!important;border-radius:12px;background:#dad5cf}
}
.exact-decoration{z-index:1}
.homepage-confidence{z-index:1}
[data-page="home"] main>[data-footer-image]{top:12497px}
@media(max-width:1199.98px){.homepage-confidence{display:none}}
@media(max-width:1199.98px){.exact-decoration{display:none!important}}
.range-summary{position:absolute;top:321px;left:363px;width:1195px;height:164px;border-radius:12px;background:#dad5cf;display:grid;grid-template-columns:249px 350px 275px 121px;gap:24px;padding:36px 52px}.range-summary h2,.range-summary label>span{display:block;font:300 16px/19px Saira,sans-serif;letter-spacing:.8px;color:#383e42;margin-bottom:25px}.range-summary p{font:500 24px/32px 'Josefin Sans',sans-serif;letter-spacing:-.72px;color:#0a0b0c;white-space:nowrap}.range-summary p>span{color:#f05f24}.range-summary label{position:relative}.range-summary select,.range-summary input{width:100%;height:56px;position:relative;top:-9px;border:1px solid #383e4240;border-radius:12px;padding:10px 22px;padding-right:40px;color:#383e42;font:300 20px/30px Saira,sans-serif;letter-spacing:.4px;background:transparent}.range-summary label>img{position:absolute;right:18px;top:52px;width:24px;height:24px;pointer-events:none}
.desktop-sticky{display:none;position:fixed;top:0;left:calc(50% - 960px);width:1920px;height:80px;background:#d4cfc9;z-index:50}.desktop-sticky.shown{display:block}.desktop-sticky>a>img,.desktop-sticky>img{left:54px!important;top:23px!important;width:276.5px!important;height:34px!important;object-fit:contain}.desktop-sticky>nav{left:760px!important;top:34px!important;transform:none!important}.desktop-sticky>div{left:1587px!important;top:16px!important}.desktop-sticky nav a,.desktop-sticky button span{color:#383e42!important}.desktop-sticky button{border-color:#525455!important;background:transparent!important}.desktop-sticky button img{filter:brightness(.3)}
@media(min-width:1200px) and (max-width:1919.98px){.desktop-sticky{left:0;width:1920px;zoom:var(--accuracy-desktop-scale,1)}}
@media(max-width:1199.98px){.desktop-sticky{display:none!important}.layout-ready main .range-summary{position:relative!important;inset:auto!important;display:flex!important;flex-direction:column!important;width:100%!important;height:auto!important;padding:24px!important;gap:24px!important}.layout-ready main .range-summary label{display:block!important}.layout-ready main .range-summary label>img{position:absolute!important;right:16px!important;top:54px!important;left:auto!important}.layout-ready main .range-summary select,.layout-ready main .range-summary input{display:block!important;width:100%!important;min-height:56px!important;height:56px!important;top:auto!important}.layout-ready main .range-summary h2,.layout-ready main .range-summary label>span{font:300 14px/20px Saira,sans-serif!important;margin-bottom:16px!important}.layout-ready main .range-summary p{font:500 24px/32px 'Josefin Sans',sans-serif!important}.layout-ready main [data-flow="checkbox"]{display:block!important;width:28px!important;height:28px!important;min-width:28px!important;position:relative!important;flex-shrink:0!important}
}
.raster-hotspot{position:absolute;z-index:3;background:transparent}
@media(min-width:1200px){
li [class*="Saira"]{transform:translateY(-7px)}
[data-page="course"] li>span[aria-hidden="true"],[data-page="calendar"] li>span[aria-hidden="true"]{margin-top:0}
.session-card li [class*="Saira"]{transform:none}
p:has(>br){display:block!important}
section[aria-labelledby="after-checkout-heading"] h2{height:22px;flex:none}
section[aria-labelledby="after-checkout-heading"]>div>div>p:first-child{height:14px;flex:none}
section[aria-labelledby="after-checkout-heading"]>div>div>p:last-child{height:44px;flex:none}
section[aria-label="Cohort session information"] h2{height:22px;flex:none}
section[aria-label="Cohort session information"] p{transform:translateY(-7px)}
}
@media(max-width:1199.98px){html.layout-ready,.layout-ready body{overflow-x:hidden}.raster-hotspot{display:none}.layout-ready main .range-summary [data-flow="text"]{font-size:inherit!important}}
.desktop-newsletter{position:absolute;left:1245px;width:322px;height:44px;display:flex;z-index:3}.desktop-newsletter input{width:292px;height:44px;font:300 16px Saira,sans-serif;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(212,207,201,.45);border-radius:6px;padding:4px 12px}
.desktop-newsletter input::placeholder{color:#b9bcbe;opacity:1}
.desktop-newsletter input:focus{outline:2px solid #f05f24;outline-offset:1px;background:rgba(255,255,255,.1)}.desktop-newsletter input:not(:placeholder-shown){background:#0a0b0c}.desktop-newsletter button{width:34px;opacity:1;color:#f05f24;background:none;border:0;font-size:22px;line-height:1;cursor:pointer}.desktop-newsletter button:focus-visible{opacity:1;color:#f05f24}
@media(max-width:1199.98px){.desktop-newsletter{display:none!important}}
.session-card>div:first-child>div:nth-child(2){position:absolute;left:0;top:403px;width:312px;height:135px;margin:0!important;gap:24px}
.session-card>div:first-child>section{position:absolute;left:-8px;top:591px;width:330px;height:416px;margin:0;gap:24px}
.session-card ul{gap:16px!important}
.session-card:not(.session-dark)>div:first-child>div:nth-child(2) p,.session-card:not(.session-dark) li>span:last-child{color:#383e42}
@media(max-width:1199.98px){.layout-ready main .session-card{height:auto!important;min-height:1085px}.layout-ready main .session-card>div:first-child>div:nth-child(2),.layout-ready main .session-card>div:first-child>section{position:relative!important;top:auto!important;left:auto!important;width:100%!important;margin:0!important;gap:20px}.layout-ready main .session-card button{width:100%!important;display:flex!important}.layout-ready main .session-card ul li>span:last-child{font-size:16px!important}}
@media(min-width:1200px){.range-summary>div:last-child{margin-left:24px}.range-summary p{transform:translateY(-6px)}.range-summary h2,.range-summary label>span{transform:translateY(-4px)}.range-summary label>img{right:23px;top:51px}}
.range-summary input::placeholder{color:#383e42;opacity:.65}
.was-validated input:invalid,.range-summary input:invalid:not(:placeholder-shown){outline:2px solid #f05f24;outline-offset:2px}.desktop-sticky button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(max-width:1199.98px){.layout-ready main .range-summary>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.layout-ready main .range-summary>div>h2{display:block!important;font:300 14px/20px Saira,sans-serif!important;color:#383e42!important}.layout-ready main .range-summary>div>p{font:500 24px/32px 'Josefin Sans',sans-serif!important}.layout-ready main .range-summary label>img{background:transparent}}
@media(max-width:1199.98px){.desktop-accessible-heading{display:none}.mobile-panel p{font-weight:300}}
@media(min-width:1200px){
.layout-ready main ul:not(nav ul){row-gap:8px}
main button[class*="bg-focus-flame"],main button[class*="bg-[#f05f24]"],main a[class*="bg-focus-flame"]{height:44px;min-height:44px;padding-top:0;padding-bottom:0}
main>header a[class*="bg-focus-flame"]{height:48px;min-height:48px}
main h1>span,main h2>span{letter-spacing:inherit}
[data-page="home"] #training-system-heading{transform:translateY(4px)}
[data-page="home"] #training-system-heading+div{transform:translateY(8px)}
[data-page="home"] section[aria-labelledby="training-system-heading"] p{transform:translateY(-8px)}
[data-page="home"] #authorized-instruction-heading{transform:translateY(4px)}
[data-page="courses"] #training-progression-heading{transform:translateY(-8px)}
.delivery-structure>h3{height:22px;display:flex;align-items:center}
.delivery-structure>div>article>h4{height:17px;display:flex;align-items:center}
.delivery-structure>div>article>p{transform:translateY(-7px)}
}
@media(max-width:1199.98px){.layout-ready main button[aria-expanded]:has(>span){display:flex!important;justify-content:space-between!important;gap:16px!important;width:100%!important}.layout-ready main button>*{min-width:0!important;max-width:100%}.layout-ready main button>span{white-space:normal!important;flex-shrink:1!important}.layout-ready main button img{position:static!important;inset:auto!important;width:24px!important;height:24px!important;max-width:28px;max-height:28px;flex-shrink:0!important}.layout-ready main .mobile-reminder{background:#383e42;color:white}.mobile-reminder label{display:flex;gap:12px;align-items:center;color:#f05f24;font:400 18px/1.5 Saira,sans-serif}.mobile-reminder input{appearance:auto!important;accent-color:#f05f24;width:22px!important;height:22px!important;min-height:22px!important;flex:none}.mobile-reminder p{color:#d4cfc9}}
[data-exact-symbol]>img{visibility:hidden}
@media(max-width:1199.98px){.layout-ready main :is(button,a)[data-flow="control"] span{min-width:0!important;max-width:100%!important;flex-shrink:1!important;white-space:normal!important}.layout-ready main a[data-flow="control"] img{position:static!important;inset:auto!important;width:20px!important;height:20px!important;flex-shrink:0!important}.layout-ready main button[data-flow="control"]:not([aria-expanded]){height:auto!important;min-height:44px}.layout-ready main button[data-flow="control"]>span{max-width:calc(100% - 8px)!important}}
.range-summary .range-date-trigger{position:absolute;right:8px;top:41px;width:44px;height:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent}.range-date-trigger img{width:24px;height:24px}.range-summary .picker-proxy{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;min-width:0!important;opacity:0;pointer-events:none;padding:0!important;border:0;overflow:hidden}
@media(max-width:1199.98px){.layout-ready main .range-summary .range-date-trigger{position:absolute!important;inset:auto 6px 4px auto!important;width:44px!important;height:44px!important;min-height:44px!important}.layout-ready main .range-summary .picker-proxy{position:absolute!important;height:1px!important;min-height:1px!important}}


/* Refined against outlined glyph bounds; preserve the exported section boxes. */
@media(min-width:1200px){
 .track-info-card h3,.track-description>h3{transform:translateY(-8px)}
 .track-info-card h3+p{transform:translateY(-16px)}
 .track-info-card ul{transform:translateY(-18px);row-gap:0!important}
 .track-description>p{transform:translateY(-34px)}
 .track-description>div{transform:translateY(-28px)}
 .track-description>div ul{margin-top:20px}
 .course-cohort-card h3{height:22px;display:flex;align-items:center}
 .session-card dl{position:relative;height:204px}
 .session-card dl>div{position:absolute;left:0;height:24px}
 .session-card dl>div:nth-child(1){top:0}
 .session-card dl>div:nth-child(2){top:40px}
 .session-card dl>div:nth-child(3){top:80px}
 .session-card dl>div:nth-child(4){top:120px}
 .session-card dl>div:nth-child(5){top:180px}
 .session-card dl>div:nth-child(4) dd{transform:translateY(-7px)}
 .session-card>div:first-child>section{top:583px}
 .session-card ul{gap:12px!important}
}
@media(min-width:1200px){
 .session-card h3>span:first-child{letter-spacing:inherit;line-height:32px}
 .session-card h3>span:last-child{letter-spacing:-.72px}
 .session-card h3{transform:translateY(-3px)}
 [data-page="home"] #training-progression-heading{line-height:48px}
 [data-page="home"] article[aria-label$="pillar"] p.text-5xl{display:flex;align-items:center}
 [data-page="home"] article[aria-label$="pillar"] p.text-5xl>span{letter-spacing:inherit}
 [data-page="home"] article[aria-label="Safety pillar"] p.text-xl{transform:translateY(-26px)}
 #faq-heading{transform:translateY(6px)}
 #faq>header>div{height:12px}
 section[aria-labelledby="system-rules-heading"] li{align-items:flex-start}
 section[aria-labelledby="system-rules-heading"] li>span:last-child{margin-top:0;transform:translateY(-8px)}
 section[aria-labelledby="system-rules-heading"] li:nth-child(3)>span:last-child{white-space:nowrap}
 [data-page="confirmation"] section[aria-label="Receipt details"] dt{transform:translateY(-8px)}
 [data-page="confirmation"] section[aria-label="Receipt details"] dd{transform:translateY(-6px)}
 .delivery-structure>h3{transform:translateY(6px)}
 .delivery-structure h4{transform:translateY(4px)}
}
@media(min-width:1200px){
 section[aria-labelledby="foundation-track-heading"] article[aria-labelledby="description-heading"] p{transform:translateY(-8px)}
 section[aria-labelledby="foundation-track-heading"] article[aria-labelledby="availability-heading"] p{transform:translateY(-8px)}
 section[aria-labelledby="foundation-track-heading"] article:is([aria-labelledby="delivery-format-heading"],[aria-labelledby="included-courses-heading"]) ul{row-gap:0!important}
 section[aria-labelledby="foundation-track-heading"] section[aria-labelledby="audience-heading"] li>span:last-child{max-width:520px}
 .session-card:not(.session-dark)>div:first-child>section{top:573px}
 .session-card:not(.session-dark) [class*="Saira"].font-normal{font-weight:400}
 .session-card[data-delivery="Self-Paced"] h3>span:first-child{font-style:italic}
 [data-page="checkout"] section[aria-label="Selected training details"] dt{transform:translateY(-8px)}
 [data-page="checkout"] section[aria-label="Selected training details"] dd{transform:translateY(-6px)}
}
@media(min-width:1200px){
 .cohort-availability h3,.cohort-standards h3{transform:translateY(-8px)}
 .cohort-availability>div>p,.cohort-standards>div{transform:translateY(-26px)}
 .cohort-standards>div{gap:16px}
 .cohort-standards>div>p:last-child{transform:translateY(-18px)}
 section[aria-labelledby="optional-cohort-sessions-heading"] article h3{height:62px;flex:none}
 section[aria-labelledby="optional-cohort-sessions-heading"] article li>span:last-child{width:342px}
 section[aria-labelledby="optional-cohort-sessions-heading"] [class*="Saira"].font-normal,section[aria-label="Cohort session information"] [class*="Saira"].font-normal{font-weight:400}
 section[aria-label="Cohort session information"]>article:last-child ul{transform:translateY(-20px)}
 section[aria-label="Cohort session information"]>article:last-child p:last-child{transform:translateY(-23px)}
 #training-environments-heading{transform:translateY(-8px)}
 #accuracy-membership-heading{transform:translateY(6px)}
}
.track-info-card,.track-description,.course-cohort-card,section[aria-labelledby="optional-cohort-sessions-heading"] article,section[aria-labelledby="accuracy-membership-heading"] [role="listitem"]{border-radius:12px}
section[aria-labelledby="foundation-track-heading"] [class*="bg-[url("]{border-radius:12px}
section[aria-labelledby="authorized-instruction-heading"] article{border-radius:12px}
@media(max-width:1199.98px){
 .layout-ready main #registration-form{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important}
 .layout-ready main section[aria-label="Receipt details"] dl div:has(>dt){display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}
}

/* ==========================================================================
   SITE HEADER + MEGANAV
   Warm Accuracy glass construction: the same two-layer
   build (scrim + panel), same blur(20px) saturate(135%) on the panel and
   blur(6px) saturate(115%) on the scrim. Tint, borders and shadow are
   re-weighted for a light panel — a .7-black drop shadow under warm glass
   reads as grime rather than depth.
   ========================================================================== */

:root {
  --nav-h: 88px;
  --nav-warm: 212, 207, 201;   /* #d4cfc9 */
  --nav-ink: #383e42;
  --nav-ember: #f05f24;
}

html.drawer-open, html.drawer-open body { overflow: hidden; }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 60;
  --nav-fg: #ffffff;
  background: transparent;
  transition: background .26s ease, backdrop-filter .26s ease, box-shadow .26s ease;
}
/* Solid-ish band once the header leaves the hero. The restrained blur keeps
   the surface distinct without competing with the page. */
.site-header.is-stuck,
.site-header.has-panel {
  --nav-fg: var(--nav-ink);
  background: rgba(var(--nav-warm), .92);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 1px 0 rgba(56, 62, 66, .12);
}

.nav-bar {
  height: var(--nav-h);
  max-width: 1801px;
  margin-inline: auto;
  padding-inline: clamp(16px, 2.8vw, 54px);
  display: flex;
  align-items: center;
  gap: clamp(16px, 3vw, 48px);
}

.nav-logo { flex: none; display: block; }
.nav-logo img {
  width: 276.5px; height: 34px; max-width: 52vw;
  object-fit: contain; object-position: left; display: block;
  transition: filter .26s ease;
}
/* No filter. The correct positive/negative lockups are swapped by src in
   SiteHeader.tsx — see the brand guide's LOGO MISUSE rules. */

.nav-primary { display: flex; align-items: center; gap: clamp(20px, 2.2vw, 34px); margin-left: auto; }
.nav-trigger {
  display: inline-flex; align-items: center; height: 48px;
  font: 400 16px/1 'Saira', Helvetica, sans-serif;
  color: var(--nav-fg);
  position: relative;
  transition: color .2s ease, opacity .2s ease;
}
.nav-trigger:hover { opacity: .75; }
/* Thin architectural rule rather than a pill or a chevron. */
.nav-trigger::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 12px; height: 1px;
  background: var(--nav-ember); transform: scaleX(0); transform-origin: left;
  transition: transform .22s ease;
}
.nav-trigger.is-open::after, .nav-trigger:hover::after { transform: scaleX(1); }
.nav-trigger:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 6px; }

/* Navigation and utilities are different kinds of thing. Same rhythm inside
   each group, a deliberate break between them, so the eye reads two zones
   rather than one row with an intruder in it. */
.nav-actions {
  display: flex; align-items: center; gap: clamp(20px, 2.2vw, 34px); flex: none;
  margin-left: clamp(28px, 3.4vw, 56px); position: relative;
}
.nav-actions::before {
  content: ""; position: absolute; left: calc(clamp(28px, 3.4vw, 56px) / -2);
  top: 50%; transform: translateY(-50%);
  width: 1px; height: 20px; background: currentColor; opacity: .22;
}
.nav-cta {
  display: inline-flex; align-items: center; gap: 7px;
  height: 48px; padding: 0 2px;
  font: 400 16px/1 'Saira', Helvetica, sans-serif;
  color: var(--nav-fg); white-space: nowrap;
  transition: color .18s ease;
}
.nav-cta::after { content: "\2192"; }
.nav-cta:hover { color: var(--nav-ember); }
.nav-cta:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 4px; border-radius: 3px; }
.nav-burger { display: none; }

/* ---------- scrim + panels ---------- */

.nav-scrim {
  position: fixed; inset: 0; z-index: 50;
  background: rgba(10, 11, 12, .22);
  backdrop-filter: blur(6px) saturate(115%);
  -webkit-backdrop-filter: blur(6px) saturate(115%);
  opacity: 0; visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease;
}
.nav-scrim.is-open { opacity: 1; visibility: visible; }

.nav-panel {
  position: absolute; left: 0; right: 0; top: var(--nav-h); z-index: 58;
  background: rgba(var(--nav-warm), .82);
  backdrop-filter: blur(20px) saturate(135%);
  -webkit-backdrop-filter: blur(20px) saturate(135%);
  border-top: 1px solid rgba(240, 95, 36, .22);
  border-bottom: 1px solid rgba(56, 62, 66, .16);
  box-shadow: 0 40px 80px -40px rgba(10, 11, 12, .45);
  animation: nav-panel-in .26s ease both;
}
.nav-panel[hidden] { display: none; }
@keyframes nav-panel-in { from { opacity: 0; transform: translateY(-10px) } to { opacity: 1; transform: none } }

.nav-panel-inner {
  max-width: 1801px; margin-inline: auto;
  padding: 44px clamp(16px, 2.8vw, 54px) 40px;
  color: var(--nav-ink);
}
.nav-panel-training .nav-panel-inner { padding-bottom: 34px; }
.nav-panel-eyebrow {
  margin: 0 0 22px;
  font: 500 13px/1 'Josefin Sans', Helvetica, sans-serif;
  text-transform: uppercase; letter-spacing: .2em;
  color: var(--nav-ember);
}
.nav-panel-grid {
  display: grid; grid-template-columns: 1fr minmax(280px, .34fr);
  gap: clamp(28px, 4vw, 72px); min-height: 248px;
}
.nav-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 2.5vw, 44px); }

.nav-col { position: relative; padding-right: clamp(12px, 1.6vw, 28px); }
.nav-cols .nav-col + .nav-col { border-left: 1px solid rgba(56,62,66,.14); padding-left: clamp(20px, 2.5vw, 44px); }
/* The sibling-dimming rule is gone on purpose. It pushed un-hovered columns to
   .62 while disabled items sat at .42 — close enough on a warm panel that
   working links read as dead. Hierarchy does the guiding now, not opacity. */

/* ---------- the track heading is the primary target ---------- */
.nav-track {
  display: flex; align-items: baseline; gap: 10px;
  padding-bottom: 12px; margin-bottom: 14px;
  border-bottom: 1px solid rgba(240, 95, 36, .22);
  color: var(--nav-ink);
  transition: color .18s ease;
}
.nav-track-num {
  flex: none;
  font: 500 13px/1 'Josefin Sans', Helvetica, sans-serif;
  letter-spacing: .12em; color: var(--nav-ember);
}
.nav-track-name {
  font: 400 30px/1.05 'Josefin Sans', Helvetica, sans-serif;
  letter-spacing: -.02em;
}
.nav-track::after {
  content: "\2192"; margin-left: auto;
  font: 400 18px/1 'Saira', Helvetica, sans-serif; color: var(--nav-ember);
  opacity: 0; transform: translateX(-6px);
  transition: opacity .18s ease, transform .18s ease;
}
.nav-track:hover { color: var(--nav-ember); }
.nav-track:hover::after { opacity: 1; transform: none; }
.nav-track:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 4px; }

/* ---------- descriptive copy: never interactive, and never looks it ---------- */
.nav-track-lead {
  margin: 0 0 6px;
  font: 500 15px/22px 'Saira', Helvetica, sans-serif;
  color: var(--nav-ink);
}
.nav-track-body {
  margin: 0 0 16px; max-width: 32ch;
  font: 300 14px/21px 'Saira', Helvetica, sans-serif;
  color: rgba(56,62,66,.68);
}

/* ---------- destination links: arrow on hover, no underline ---------- */
.nav-col-links { display: flex; flex-direction: column; }
.nav-col-links .nav-link { padding: 7px 0; }
.nav-col-links .nav-link::after {
  content: " \2192"; color: var(--nav-ember);
  opacity: 0; transition: opacity .18s ease;
}
.nav-col-links .nav-link:hover::after { opacity: 1; }

/* ---------- utility list under the starting-point action ---------- */
.nav-feature-links {
  display: flex; flex-direction: column; width: 100%;
  margin-top: 22px; padding-top: 18px;
  border-top: 1px solid rgba(56,62,66,.16);
}
.nav-utility {
  padding: 6px 0;
  font: 300 14px/1.4 'Saira', Helvetica, sans-serif;
  color: rgba(56,62,66,.78);
}
a.nav-utility:hover { color: var(--nav-ember); transform: translateX(3px); }

.nav-eyebrow {
  font: 500 13px/1 'Josefin Sans', Helvetica, sans-serif;
  text-transform: uppercase; letter-spacing: .2em;
  color: var(--nav-ember);
  padding-bottom: 12px; margin: 0 0 14px;
  border-bottom: 1px solid rgba(240, 95, 36, .22);
}
.nav-eyebrow-wide { max-width: 100%; }
.nav-tagline { margin: 0 0 16px; font: 300 15px/22px 'Saira', Helvetica, sans-serif; color: rgba(56,62,66,.72); }

.nav-link {
  display: block; width: 100%; text-align: left;
  font: 400 15px/1.4 'Saira', Helvetica, sans-serif;
  color: var(--nav-ink); padding: 9px 0;
  transition: color .18s ease, transform .18s ease;
}
a.nav-link:hover, button.nav-link:hover { color: var(--nav-ember); transform: translateX(3px); }
.nav-link:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 3px; }
.nav-link-go { margin-top: 6px; font-weight: 500; color: var(--nav-ember); }
.nav-link-go::after { content: " \2192"; }
/* Present, not yet linked. Restore the href as each page ships. */
.nav-link.is-pending { color: rgba(56,62,66,.42); cursor: default; }
.nav-link.is-pending::after { content: ""; }

/* ---------- Training feature cell ---------- */

.nav-feature {
  position: relative; overflow: hidden;
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start;
  padding: 30px clamp(20px, 2.2vw, 36px);
  background: rgba(56, 62, 66, .06);
  border-left: 1px solid rgba(240, 95, 36, .22);
}
/* .nav-watermark removed — see SiteHeader.tsx */
.nav-feature-eyebrow {
  position: relative; margin: 0 0 10px;
  font: 500 13px/1 'Josefin Sans', Helvetica, sans-serif;
  text-transform: uppercase; letter-spacing: .2em; color: var(--nav-ink);
}
.nav-feature-body {
  position: relative; margin: 0 0 20px; max-width: 30ch;
  font: 300 16px/24px 'Saira', Helvetica, sans-serif; color: rgba(56,62,66,.78);
}
.nav-feature-cta {
  position: relative;
  font: 500 16px/1 'Saira', Helvetica, sans-serif; color: var(--nav-ember);
}
.nav-feature-cta:hover { text-decoration: underline; text-underline-offset: 4px; }

/* ---------- Why Accuracy ---------- */

.nav-approach { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(24px, 3vw, 56px); margin-bottom: 26px; }
.nav-approach h3 { margin: 0 0 8px; font: 400 28px/1.1 'Josefin Sans', Helvetica, sans-serif; letter-spacing: -.02em; color: var(--nav-ink); }
.nav-approach p { margin: 0; font: 300 15px/22px 'Saira', Helvetica, sans-serif; color: rgba(56,62,66,.75); }
.nav-panel-why .nav-link-go { display: inline-block; width: auto; }

/* ---------- mobile ---------- */

.nav-drawer { display: none; }

@media (max-width: 1199.98px) {
  :root { --nav-h: 76px; }
  .site-header { --nav-fg: #ffffff; background: var(--nav-ink); }
  .site-header.is-stuck, .site-header.has-panel { --nav-fg: #ffffff; background: var(--nav-ink); backdrop-filter: none; -webkit-backdrop-filter: none; }
  .site-header .nav-logo img { filter: none !important; width: 220px; height: auto; }
  .nav-primary, .nav-cta, .nav-scrim, .nav-panel { display: none !important; }
  .nav-burger {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; min-width: 44px; padding: 10px 14px;
    border: 1px solid rgba(212,207,201,.4); border-radius: 6px;
    font: 500 16px/1 'Saira', Helvetica, sans-serif; color: #fff;
  }
  .nav-actions { margin-left: auto; }
  .nav-drawer {
    display: block; position: fixed; inset: var(--nav-h) 0 0; z-index: 59;
    background: var(--nav-ink); color: #fff;
    padding: 24px; overflow-y: auto; overscroll-behavior: contain;
  }
  .nav-drawer[hidden] { display: none; }
  .nav-drawer-cta {
    display: flex; align-items: center; justify-content: center;
    min-height: 52px; margin-bottom: 20px; border-radius: 6px;
    background: var(--nav-ember); color: #fff;
    font: 500 17px/1 'Saira', Helvetica, sans-serif;
  }
  .nav-drawer-toggle {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    width: 100%; min-height: 56px; padding: 8px 0;
    border-bottom: 1px solid rgba(212,207,201,.22);
    font: 400 20px/1 'Josefin Sans', Helvetica, sans-serif; color: #fff;
  }
  .nav-drawer-body { padding: 12px 0 20px; }
  .nav-drawer .nav-eyebrow { color: var(--nav-ember); border-bottom-color: rgba(240,95,36,.3); margin-top: 14px; }
  .nav-drawer .nav-link { color: #fff; min-height: 44px; display: flex; align-items: center; }
  .nav-drawer .nav-tagline { color: rgba(212,207,201,.8); }
  .nav-drawer-track { padding: 6px 0 12px; margin-bottom: 14px; border-bottom: 1px solid rgba(212,207,201,.16); }
  .nav-drawer .nav-track { color: #fff; border-bottom-color: rgba(240,95,36,.34); }
  .nav-drawer .nav-track-name { font-size: 24px; }
  .nav-drawer .nav-track-lead { color: rgba(212,207,201,.85); font-size: 14px; }
  .nav-drawer .nav-track-body { display: none; }
  .nav-drawer .nav-utility { color: rgba(212,207,201,.85); min-height: 44px; display: flex; align-items: center; }
  .nav-drawer .nav-panel-training .nav-panel-inner { padding-bottom: 34px; }
.nav-panel-eyebrow { color: var(--nav-ember); }
}

@media (prefers-reduced-motion: reduce) {
  .nav-panel { animation: none; }
  .nav-link, .nav-trigger::after, .site-header { transition: none; }
}

/* The header used to sit in flow above <main> on mobile; it is fixed now,
   so main has to clear it. Desktop is unaffected: the hero starts at y0 and
   the header is meant to overlay it. */
@media (max-width: 1199.98px) {
  .layout-ready main { padding-top: calc(var(--nav-h) + 32px); }
}

/* ---- persistent phone in the bar ---- */
.nav-phone {
  display: inline-flex; align-items: center; gap: 8px;
  height: 48px;
  font: 400 16px/1 'Saira', Helvetica, sans-serif;
  color: var(--nav-fg); white-space: nowrap;
  transition: color .18s ease;
}
.nav-phone svg { width: 15px; height: 15px; flex: none; color: var(--nav-ember); }
.nav-phone:hover { color: var(--nav-ember); }
.nav-phone:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 4px; border-radius: 3px; }
.nav-drawer-phone { display: none; }

@media (max-width: 1199.98px) {
  /* No room for it beside the logo at 390px, so it leads the drawer instead. */
  .nav-phone { display: none; }
  .nav-drawer-phone {
    display: flex; align-items: center; justify-content: center; gap: 10px;
    min-height: 52px; margin-bottom: 12px; border-radius: 6px;
    border: 1px solid rgba(212,207,201,.4); color: #fff;
    font: 500 18px/1 'Saira', Helvetica, sans-serif;
  }
  /* the bar carries the phone icon; the drawer stays plain for consistency */
}

/* Contact sits in the bar beside the phone — one click from any page. */
.nav-contact {
  display: inline-flex; align-items: center;
  height: 48px; padding: 0 2px;
  font: 400 16px/1 'Saira', Helvetica, sans-serif;
  color: var(--nav-fg); white-space: nowrap;
  transition: color .18s ease;
}
.nav-contact:hover { color: var(--nav-ember); }
.nav-contact:focus-visible { outline: 2px solid var(--nav-ember); outline-offset: 4px; border-radius: 3px; }

@media (max-width: 1199.98px) {
  .nav-contact { display: none; }
  /* only the burger remains in this group below 1200px */
  .nav-actions { margin-left: auto; }
  .nav-actions::before { display: none; }
  .nav-drawer-direct { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 12px; }
  .nav-drawer-phone { margin-bottom: 0; }
  .nav-drawer-contact {
    display: flex; align-items: center; justify-content: center;
    min-height: 52px; border-radius: 6px;
    border: 1px solid rgba(212,207,201,.4); color: #fff;
    font: 500 18px/1 'Saira', Helvetica, sans-serif;
  }
}

/* The end sequence owns the screen: the whole bar leaves for the transformation
   card AND the logo reveal, then returns when the loop drops back into live
   action. Hiding only the logo left the links floating with no anchor, and
   returning the bar for the reveal put two Accuracy marks on screen at once.
   inert + pointer-events keep it out of the tab order while invisible. */
html.hero-on-light .site-header:not(.is-stuck):not(.has-panel):not(:hover):not(:focus-within) {
  opacity: 0;
  /* visibility:hidden also removes the bar from the tab order, so keyboard
     users cannot land on controls they cannot see. Doing it in CSS rather than
     with a JS `inert` attribute means it cannot desync: the selector excludes
     .is-stuck, so scrolling mid-sequence restores a fully usable header. */
  /* NOT visibility:hidden and NOT pointer-events:none. Either one makes
     :hover and :focus-within impossible to satisfy, so the bar could never
     come back while the sequence ran — roughly 9.7s of every 38.8s loop in
     which Training simply did not respond. Opacity alone keeps the bar
     hoverable and tab-reachable; the selector above brings it back the
     instant anyone reaches for it. */
  /* No transition: the header CUTS on the flash frame rather than fading into
     it. Returning on the loop is equally instant — the footage restarts on a
     dark frame, so there is nothing to ease. */
  transition: none;
}

/* ==========================================================================
   HOMEPAGE HERO
   Sized to the viewport, not to the canvas. svh is used so mobile browser
   chrome collapsing does not change the hero height mid-scroll.
   ========================================================================== */

.site-hero {
  position: relative;
  width: 100%;
  height: 100svh;
  min-height: 560px;
  overflow: hidden;
  background: var(--black, #0a0b0c);
  display: flex;
  align-items: flex-end;
}
/* Fallback for engines without svh. */
@supports not (height: 100svh) { .site-hero { height: 100vh; } }

.site-hero-media {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  /* The composition's subject sits left of centre; hold that under crop. */
  object-position: 42% center;
}
/* The headline sits over the brightest part of the frame on some cuts. */
.site-hero-veil {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(10,11,12,.55) 0%, rgba(10,11,12,.15) 38%, rgba(10,11,12,.72) 100%);
}

.site-hero-inner {
  position: relative;
  width: 100%;
  max-width: 1801px;
  margin-inline: auto;
  padding: 0 clamp(16px, 2.8vw, 54px) clamp(48px, 9svh, 104px);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: clamp(24px, 4vw, 72px);
}

.site-hero-title {
  margin: 0;
  font-family: 'Josefin Sans', Helvetica, sans-serif;
  font-weight: 400;
  font-size: clamp(44px, 5.6vw, 96px);
  line-height: 1.02;
  letter-spacing: -.03em;
  color: #fff;
}
.site-hero-title span { display: block; }
.site-hero-title span:first-child { color: var(--focus-flame, #f05f24); }
/* The approved composition indents the second line. */
.site-hero-title span:last-child { padding-left: .72em; }

.site-hero-aside {
  display: flex; flex-direction: column; align-items: flex-start;
  gap: clamp(16px, 2.4svh, 28px);
  max-width: 320px;
}
.site-hero-aside p {
  margin: 0;
  font: 300 clamp(15px, 1.15vw, 18px)/1.5 'Saira', Helvetica, sans-serif;
  color: #d4cfc9;
}

/* --------------------------------------------------------------------------
   Canvas offset.
   The hero used to occupy canvas rows 0-1080 as an opaque overlay. With it
   lifted out, main is pulled up by exactly those rows and the wrapper clips
   the overflow, so nothing beneath shifts and no gap opens.
   The negative margin is inside the zoomed element, so it scales with it.
   -------------------------------------------------------------------------- */
.canvas-clip { overflow: hidden; }

@media (min-width: 1200px) {
  body[data-page="home"] .canvas-clip > main { margin-top: -1080px; }
}

@media (max-width: 1199.98px) {
  /* Below 1200px the canvas is reflowed and .mobile-hero carries the copy,
     so the hero runs shorter and hands off to the stacked layout. */
  .site-hero { height: 72svh; min-height: 420px; }
  .site-hero-inner { grid-template-columns: 1fr; }
  .site-hero-aside { max-width: none; }
  .layout-ready main { padding-top: 32px; }
}

@media (prefers-reduced-motion: reduce) {
  .site-hero-media { transition: none; }
}

/* Pillar panels: video replaced the mask-group stills, so the copy needs its
   own ground. The stills had a gradient baked in; this reproduces it. */
.pillar-scrim {
  background: linear-gradient(180deg, rgba(10,11,12,0) 30%, rgba(10,11,12,.62) 62%, rgba(10,11,12,.88) 100%);
}
.pillar-copy { z-index: 1; }

/* ---- contact details: modal + footer ---- */
.contact-direct { display: grid; gap: 10px; margin: 20px 0 4px; }
.contact-direct-item {
  display: grid; gap: 2px;
  padding: 14px 18px; border: 1px solid rgba(56,62,66,.22); border-radius: 8px;
  background: rgba(255,255,255,.35); color: #383e42; min-height: 44px;
  transition: border-color .18s ease, background .18s ease;
}
.contact-direct-item:hover { border-color: #f05f24; background: rgba(255,255,255,.6); }
.contact-direct-label { font: 500 11px/1 'Josefin Sans',sans-serif; text-transform: uppercase; letter-spacing: .2em; color: #f05f24; }
.contact-direct-value { font: 500 20px/1.3 'Saira',sans-serif; }
.contact-direct-sub { font: 300 14px/1.3 'Saira',sans-serif; opacity: .7; }
.contact-or { position: relative; margin: 22px 0 6px; text-align: center; }
.contact-or::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: rgba(56,62,66,.18); }
.contact-or span { position: relative; padding: 0 12px; background: #d4cfc9; font: 300 14px/1 'Saira',sans-serif; opacity: .75; }
.contact-notice a { text-decoration: underline; text-underline-offset: 3px; }

.footer-contact { display: grid; gap: 6px; align-content: start; }
.footer-contact span { opacity: .65; }

/* The base layer strips input chrome site-wide (appearance-none, no border),
   so every field in the modal needs its own. */
.contact-form { display: grid; gap: 14px; margin-top: 16px; }
.contact-form label { display: grid; gap: 6px; }
.contact-form label > span {
  font: 400 13px/1 'Saira', Helvetica, sans-serif;
  letter-spacing: .04em; color: rgba(56,62,66,.8);
}
.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%; min-height: 48px; padding: 12px 14px;
  border: 1px solid rgba(56,62,66,.3) !important; border-radius: 6px;
  background: rgba(255,255,255,.55) !important;
  font: 400 16px/1.4 'Saira', Helvetica, sans-serif; color: #383e42;
  transition: border-color .18s ease, background .18s ease;
}
.contact-form textarea { min-height: 104px; resize: vertical; padding-top: 12px; }
.contact-form select { appearance: auto !important; }
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: none; border-color: #f05f24 !important; background: #fff !important;
}
.contact-form .brand-button { justify-self: start; margin-top: 4px; border: 0; }
.contact-form .brand-button:disabled { opacity: .6; }
.was-validated .contact-form input:invalid,
.was-validated .contact-form textarea:invalid { border-color: #f05f24 !important; }
.contact-notice {
  margin: 0; padding: 12px 14px; border-radius: 6px;
  background: rgba(240,95,36,.1); border: 1px solid rgba(240,95,36,.3);
  font: 300 15px/1.5 'Saira', Helvetica, sans-serif; color: #383e42;
}
.contact-dialog { max-height: 88svh; overflow-y: auto; }
.contact-intro { margin: 0; font: 300 16px/1.5 'Saira', Helvetica, sans-serif; opacity: .85; }

/* During the end card the overlay copy clears out so the logo reveal is what
   you see. The veil goes with it, or the white card renders muddy grey. */
.site-hero-inner,
.site-hero-veil { transition: opacity .6s ease; }
.site-hero.is-end-card .site-hero-inner {
  opacity: 0;
  pointer-events: none;
}
.site-hero.is-end-card .site-hero-veil { opacity: 0; }

@media (prefers-reduced-motion: reduce) {
  .site-hero-inner, .site-hero-veil { transition: none; }
}

/* Hero copy clears for the end card so the logo reveal stands alone. The veil
   goes with it — it would grey out the white card and dull the lockup. */
.site-hero-inner,
.site-hero-veil { transition: opacity .5s ease; }
.site-hero.is-end-card .site-hero-inner { opacity: 0; pointer-events: none; }
.site-hero.is-end-card .site-hero-veil { opacity: 0; }

@media (prefers-reduced-motion: reduce) {
  .site-hero-inner, .site-hero-veil { transition: none; }
}

/* ---- interior page heroes ---------------------------------------------- */

/* "Confidence" is orange on the homepage; on interior heroes only the middle
   word is, so the default first-child colouring is overridden explicitly. */
.site-hero-title--tight { font-size: clamp(40px, 4.6vw, 82px); line-height: 1.04; }
.site-hero-title--tight span { display: inline; }
.site-hero-title--tight span:first-child { color: #fff; }
.site-hero-plain { color: #fff; }
.site-hero-title--tight span:nth-child(2) { color: var(--focus-flame, #f05f24); }

.site-hero-aside--badge { gap: 18px; max-width: 420px; }
.site-hero-aside--badge img { width: 96px; height: 96px; flex: none; }

.site-hero--centre .site-hero-inner {
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
  align-content: center;
  align-items: center;
  padding-bottom: clamp(48px, 12svh, 140px);
  padding-top: clamp(88px, 14svh, 160px);
  gap: clamp(18px, 3svh, 34px);
}
.site-hero--centre .site-hero-title { padding-left: 0; }
.site-hero-title--centre {
  font-size: clamp(40px, 5vw, 88px);
  line-height: 1.04;
  text-align: center;
}
.site-hero-title--centre span { display: inline; }
.site-hero-badge { width: clamp(78px, 7vw, 130px); height: auto; }
.site-hero-dek {
  margin: 0; max-width: 34ch;
  font: 300 clamp(15px, 1.15vw, 20px)/1.5 'Saira', Helvetica, sans-serif;
  color: #d4cfc9;
}

/* Pull each page's canvas up by exactly the rows its hero used to occupy. */
@media (min-width: 1200px) {
  body[data-page="courses"] .canvas-clip > main { margin-top: -1080px; }
  body[data-page="course"]  .canvas-clip > main { margin-top: -800px; }
}

/* ---- logo reveal end card -------------------------------------------------
   A separate element so the designer's 4K animation stays sharp and the
   contact line can be real text instead of pixels baked into footage. */
.hero-endcard {
  position: absolute; inset: 0; z-index: 2;
  background: #ffffff;
  opacity: 0; visibility: hidden;
  /* Fades only on the way OUT, back to live action. */
  transition: opacity .3s ease, visibility .3s ease;
}
.hero-endcard.is-on { opacity: 1; visibility: visible; transition: none; }
/* A fixed 16:9 stage so the text tracks the logo at every viewport. */
.hero-endcard-frame {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  width: min(100%, calc(100svh * 16 / 9));
  aspect-ratio: 16 / 9;
}
.hero-endcard-media { width: 100%; height: 100%; object-fit: contain; display: block; }
.hero-endcard-contact {
  position: absolute; margin: 0;
  opacity: 0;
  transition: opacity 1s ease;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  font-family: 'Saira', Helvetica, sans-serif;
  font-weight: 400;
  font-size: min(1.72vw, 3.06svh);
  letter-spacing: .036em;
  /* same grey as the transformation text — the two assets were
     designed as a pair for white (logo ink rgb(91,93,94)). */
  color: rgb(85, 85, 88);
}
.hero-endcard-contact.is-revealed { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .hero-endcard-contact { transition: none; }
}
@supports not (height: 100svh) {
  .hero-endcard-frame { width: min(100%, calc(100vh * 16 / 9)); }
  .hero-endcard-contact { font-size: min(1.72vw, 3.06vh); }
}

/* ---- white "YOUR TRANSFORMATION BEGINS HERE" card ------------------------
   Was baked into the 720p footage and upscaled; now real text so it stays
   sharp at any resolution. Geometry measured off the original frame. */
.hero-whitecard {
  position: absolute; inset: 0; z-index: 2;
  background: #ffffff;
  opacity: 0; visibility: hidden;
  /* 380ms white -> charcoal, measured off the original dissolve. The surface
     changes colour in place; it never fades away over something else. */
  /* No transition at all. Entry matches the video's final white frame and exit
     matches the end card's white — both instant swaps between identical
     colours. Crossfading them let the frame beneath bleed through (measured
     coverage dipped to 0.67). */
  transition: none;
}
.hero-whitecard.is-on { opacity: 1; visibility: visible; }
.hero-whitecard-text {
  position: absolute; margin: 0;
  left: 49.84%; top: 50.62%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  font-family: 'Josefin Sans', Helvetica, sans-serif;
  /* SemiBold is the guide's primary weight and the heaviest the designer
     shipped. The video used Bold, but that frame no longer ships. */
  font-weight: 600;
  font-size: min(3.281vw, 5.833svh);
  letter-spacing: .0405em;
  color: #555558;
  opacity: 0;
  /* 730ms in, eased — matching the measured alpha ramp .04 .12 .19 .29 .52
     .70 .94 1.00. Out is quicker (260ms) so the type clears before the
     ground turns. */
  transition: opacity .26s ease-in;
}
.hero-whitecard-text.is-revealed {
  opacity: 1;
  transition: opacity .73s cubic-bezier(.4, 0, .5, 1);
}
@supports not (height: 100svh) {
  .hero-whitecard-text { font-size: min(3.281vw, 5.833vh); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-whitecard, .hero-whitecard-text { transition: none; }
}

/* ---- CTAs as text links --------------------------------------------------
   Scott's ruling: the boxes pull attention away from the work around them —
   on the hero, away from the video's job. Matching the nav's text-link
   treatment: inline-flex, colour transition, no chrome.
   The base .brand-button in refinements.css is overridden rather than edited,
   so the original build file stays untouched. */
.brand-button {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 0; min-height: 44px;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--focus-flame, #f05f24) !important;
  font: 500 18px/1.3 'Saira', Helvetica, sans-serif;
  text-decoration: none;
  transition: color .18s ease, transform .18s ease;
}
.brand-button:hover { transform: translateX(3px); }
.brand-button:focus-visible { outline: 2px solid var(--focus-flame, #f05f24); outline-offset: 4px; }

/* On the hero the link sits on moving footage, so it carries white ink with a
   readability shadow instead of ember-on-video. */
.site-hero .brand-button {
  color: #fff !important;
  text-shadow: 0 1px 12px rgba(10, 11, 12, .55);
}
.site-hero .brand-button:hover { color: var(--focus-flame, #f05f24) !important; }

/* The modal submit stays a button: it performs a form action rather than
   navigating, and a text link is the wrong affordance for that. */
.contact-form .brand-button {
  justify-self: start; margin-top: 4px;
  padding: 12px 21px;
  background: var(--focus-flame, #f05f24) !important;
  color: #fff !important;
  border-radius: 6px !important;
  box-shadow: 0 0 0 8px rgba(240, 95, 36, .15) !important;
}
.contact-form .brand-button:hover { transform: none; }

/* ---- CTAs, site-wide ------------------------------------------------------
   The Figma export baked ember backgrounds onto buttons via Tailwind classes,
   so the earlier .brand-button override never reached them. This de-boxes
   every NAVIGATIONAL cta — links and modal triggers — to match the nav's
   text-link treatment.
   Deliberately excluded: the five transactional submits in the purchase flow
   (Register, Confirm selection, Continue to Checkout, Complete Registration,
   Complete Enrollment). Those perform an action rather than navigate, and a
   text link is the wrong affordance for a payment step. */
main a[class*="bg-focus-flame"],
main a[class*="bg-[#f05f24]"],
main button[class*="bg-focus-flame"]:not([data-keep-button]),
main button[class*="bg-[#f05f24]"]:not([data-keep-button]) {
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--focus-flame, #f05f24) !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 44px;
  justify-content: flex-start !important;
  transition: transform .18s ease;
}
main a[class*="bg-focus-flame"]:hover,
main a[class*="bg-[#f05f24]"]:hover,
main button[class*="bg-focus-flame"]:not([data-keep-button]):hover,
main button[class*="bg-[#f05f24]"]:not([data-keep-button]):hover {
  transform: translateX(3px);
}
/* the ember background is gone, so any white label inside must take the ink */
main a[class*="bg-focus-flame"] *,
main a[class*="bg-[#f05f24]"] *,
main button[class*="bg-focus-flame"]:not([data-keep-button]) *,
main button[class*="bg-[#f05f24]"]:not([data-keep-button]) * {
  color: var(--focus-flame, #f05f24) !important;
}
/* small square ember accents are decoration, not CTAs — leave them alone */
main [class*="bg-focus-flame"][class*="w-3"],
main [class*="bg-focus-flame"][class*="aspect-"] {
  background: var(--focus-flame, #f05f24) !important;
  width: .75rem !important; height: .75rem !important; min-height: 0 !important;
}

/* The arrow keeps the ember even where the label is white (hero over video). */
.site-hero .brand-button { color: #fff !important; }
.site-hero .brand-button::after,
.site-hero .brand-button > span:last-child {
  color: var(--focus-flame, #f05f24) !important;
}

/* The Figma arrows inside those buttons are stroke=white, drawn for an ember
   background. With the box removed they are white-on-light and invisible, so
   they are replaced with a text arrow that inherits the ink. */
main a[class*="bg-focus-flame"] img[src*="arrow"],
main a[class*="bg-[#f05f24]"] img[src*="arrow"],
main button[class*="bg-focus-flame"]:not([data-keep-button]) img[src*="arrow"],
main button[class*="bg-[#f05f24]"]:not([data-keep-button]) img[src*="arrow"] {
  display: none !important;
}
main a[class*="bg-focus-flame"]::after,
main a[class*="bg-[#f05f24]"]::after,
main button[class*="bg-focus-flame"]:not([data-keep-button])::after,
main button[class*="bg-[#f05f24]"]:not([data-keep-button])::after {
  content: "\2192";
  color: var(--focus-flame, #f05f24);
  margin-left: .45em;
  transition: transform .18s ease;
}

/* Hero: white label, ember arrow. */
.site-hero .brand-button > span[aria-hidden] { color: var(--focus-flame, #f05f24) !important; }

/* The injected mobile hero used to carry its own <h1>, duplicating the real
   hero heading on every page. It is a <p> now and takes the heading styling
   here, so the document keeps exactly one <h1>. */
.mobile-hero .mh-title,.mobile-course-hero .mh-title{
  margin:0 0 14px;font:400 clamp(34px,9vw,46px)/1.05 'Josefin Sans',Helvetica,sans-serif;
  letter-spacing:-.02em;color:#fff}
.mobile-hero .mh-title span{color:var(--focus-flame,#f05f24)}

/* ---- hero pause control ---------------------------------------------------
   Required by WCAG 2.2 SC 2.2.2 for auto-playing motion running beyond five
   seconds. A fixed square with the glyph centred: the earlier version carried a
   collapsed text label, and the flex gap still applied, so it rendered as an
   oblong with the icon pushed off-centre. */
.hero-toggle{
  position:absolute; right:clamp(16px,2.4vw,40px); bottom:clamp(16px,2.4vh,34px);
  z-index:3; display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; padding:0; box-sizing:border-box;
  background:rgba(10,11,12,.42); backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.22); border-radius:4px;
  color:#fff; cursor:pointer;
  transition:background .18s ease,border-color .18s ease;
}
.hero-toggle:hover{background:rgba(10,11,12,.62); border-color:rgba(255,255,255,.42)}
.hero-toggle:focus-visible{outline:2px solid var(--focus-flame,#f05f24); outline-offset:3px}
.hero-toggle > span{display:flex; align-items:center; justify-content:center; line-height:0}
.hero-toggle svg{width:16px; height:16px; display:block}
@media (min-width:1200px){
  .hero-toggle{
    right:clamp(28px,3vw,56px);
    bottom:clamp(92px,10vh,124px)
  }
}
@media (max-width:1199.98px){
  .hero-toggle{
    right:max(18px,env(safe-area-inset-right));
    bottom:max(22px,calc(env(safe-area-inset-bottom) + 14px))
  }
}
@media (prefers-reduced-motion:reduce){ .hero-toggle{transition:none} }

/* Training Hub styles, ported from the approved prototype.
   Scoped to .hub-root, NOT to body: scoping to the body swept in the site
   header (orange nav links, stray rules in the meganav) and the prototype's
   own body{} rule leaked onto every page. Comments are stripped before
   scoping so the prefix cannot attach to a comment instead of a selector. */


:root{
  --flame:#F05F24; --slate:#525455; --charcoal:#383E42; --warm:#D4CFC9; --white:#fff;
  --ink:#383E42; --muted:#6b6f72;
  --wrap:1180px;
}
/* FAQ expansion must not shrink the heading area inside the former fixed-height section. */
section[aria-labelledby="faq-heading"]{height:auto!important}
section[aria-labelledby="faq-heading"]>header,#all-faqs{flex-shrink:0!important}
body[data-page="courses"] .hub-root *{box-sizing:border-box}
body[data-page="courses"] .hub-root{scroll-behavior:smooth}
body[data-page="courses"] .hub-root{margin:0;background:var(--white);color:var(--ink);
  font:300 17px/1.65 'Saira',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body[data-page="courses"] .hub-root h1,body[data-page="courses"] .hub-root h2,body[data-page="courses"] .hub-root h3,body[data-page="courses"] .hub-root .step em,body[data-page="courses"] .hub-root .buybox-label,body[data-page="courses"] .hub-root .eyebrow{font-family:'Josefin Sans',Helvetica,sans-serif}
body[data-page="courses"] .hub-root h1,body[data-page="courses"] .hub-root h2,body[data-page="courses"] .hub-root h3{font-weight:500;letter-spacing:-.015em;margin:0}
body[data-page="courses"] .hub-root strong,body[data-page="courses"] .hub-root b{font-weight:500}
body[data-page="courses"] .hub-root a{color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--flame)}
body[data-page="courses"] .hub-root a:hover{color:#24282b;border-bottom-color:var(--flame)}
body[data-page="courses"] .hub-root .wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,56px)}
body[data-page="courses"] .hub-root .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body[data-page="courses"] .hub-root .eyebrow{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink);margin:0 0 14px;padding-left:14px;position:relative}
body[data-page="courses"] .hub-root .eyebrow::before{content:"";position:absolute;left:0;top:.36em;width:7px;height:3px;background:var(--flame)}
body[data-page="courses"] .hub-root .hero .eyebrow,body[data-page="courses"] .hub-root .before .eyebrow{color:#fff}
body[data-page="courses"] .hub-root .hero .eyebrow{margin-bottom:34px}


body[data-page="courses"] .hub-root .skip{position:absolute;left:-9999px}
body[data-page="courses"] .hub-root .skip:focus{left:16px;top:16px;z-index:99;background:var(--charcoal);color:#fff;padding:10px 16px;border-radius:4px}


body[data-page="courses"] .hub-root .hero{position:relative;background:#252a2d;color:#fff;min-height:100svh;overflow:hidden;display:block}
body[data-page="courses"] .hub-root .hero-copy{position:relative;z-index:2;display:flex;align-items:center;min-height:inherit;padding:clamp(92px,11vh,136px) clamp(28px,4.8vw,70px) clamp(72px,9vh,110px)}
body[data-page="courses"] .hub-root .hero-copy-inner{width:min(640px,100%)}
body[data-page="courses"] .hub-root .hero h1{font-size:clamp(42px,5.2vw,72px);line-height:1.04;max-width:13ch;margin:0}
body[data-page="courses"] .hub-root .hero h1 span{color:var(--flame)}
body[data-page="courses"] .hub-root .hero p{max-width:48ch;margin:24px 0 0;color:#f1efeb;font-size:clamp(17px,1.45vw,20px)}
body[data-page="courses"] .hub-root .hero-media{position:absolute;inset:0;background:#252a2d}
body[data-page="courses"] .hub-root .hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,25,27,.76) 0%,rgba(22,25,27,.58) 26%,rgba(22,25,27,.16) 55%,rgba(22,25,27,.12) 100%);pointer-events:none}
body[data-page="courses"] .hub-root .hero-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% center}
body[data-page="courses"] .hub-root .hero-action{display:inline-flex;align-items:center;gap:10px;margin-top:28px;color:#fff;font:500 16px/1 'Saira';letter-spacing:.01em}
body[data-page="courses"] .hub-root .hero-action .arrow{color:var(--flame);font-size:19px;line-height:1;transform:translateY(-1px)}
body[data-page="courses"] .hub-root .hero-action:hover .arrow{transform:translate(3px,-1px)}
body[data-page="courses"] .hub-root .hero-action:focus-visible{outline:2px solid var(--flame);outline-offset:6px}


body[data-page="courses"] .hub-root .glance{padding:clamp(56px,8vh,92px) 0;border-bottom:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .glance-title{font-size:clamp(30px,3.5vw,44px);line-height:1.08;margin:2px 0 18px;color:var(--ink)}
body[data-page="courses"] .hub-root .glance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:8px}
body[data-page="courses"] .hub-root .glance-card{padding:26px clamp(16px,2vw,30px);position:relative}
body[data-page="courses"] .hub-root .glance-card+.glance-card{border-left:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .glance-card h3{font-size:26px;margin-bottom:6px}
body[data-page="courses"] .hub-root .glance-card p{margin:0 0 14px;color:var(--muted);font-size:15.5px;min-height:3em}
body[data-page="courses"] .hub-root .glance-card .p{font-family:'Josefin Sans';font-size:22px;font-weight:500;color:var(--ink)}
body[data-page="courses"] .hub-root .glance-flow{display:flex;align-items:center;gap:10px;margin-top:22px;color:var(--muted);font-size:15px}
body[data-page="courses"] .hub-root .glance-flow b{font-weight:500;color:var(--ink)}


body[data-page="courses"] .hub-root .start{padding:clamp(56px,8vh,92px) 0;background:#faf9f8;border-bottom:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .start ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
body[data-page="courses"] .hub-root .start li{background:var(--white);padding:20px clamp(16px,2vw,26px);display:flex;
  flex-wrap:wrap;gap:6px 18px;align-items:baseline;border:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .start q{quotes:none;font-size:17px}
body[data-page="courses"] .hub-root .start a{font-weight:500;white-space:nowrap}


body[data-page="courses"] .hub-root .track{padding:clamp(60px,9vh,104px) 0}
body[data-page="courses"] .hub-root .track--warm{background:var(--white);color:var(--ink)}
body[data-page="courses"] .hub-root .track--slate{background:#f7f6f3;color:var(--ink)}
body[data-page="courses"] .hub-root .track--charcoal{background:var(--white);color:var(--ink)}
body[data-page="courses"] .hub-root .track+.track{border-top:1px solid #e8e5e1}

body[data-page="courses"] .hub-root .track--slate .purpose,body[data-page="courses"] .hub-root .track--charcoal .purpose{color:#54585b}
body[data-page="courses"] .hub-root .track-head{max-width:60ch}
body[data-page="courses"] .hub-root .step{display:flex;align-items:center;gap:7px;margin:0 0 16px}
body[data-page="courses"] .hub-root .step span{width:26px;height:3px;background:currentColor;opacity:.22;border-radius:2px}
body[data-page="courses"] .hub-root .step span.on{background:var(--flame);opacity:1}
body[data-page="courses"] .hub-root .step em{font-style:normal;font-size:12px;letter-spacing:.2em;text-transform:uppercase;
  margin-left:8px;opacity:.75}
body[data-page="courses"] .hub-root .track h2{font-size:clamp(34px,4.4vw,54px);line-height:1.05}
body[data-page="courses"] .hub-root .purpose{font-size:clamp(18px,1.7vw,23px);margin:12px 0 0;color:#54585b;max-width:40ch}
body[data-page="courses"] .hub-root .decide{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);margin-top:44px;align-items:start}
body[data-page="courses"] .hub-root .facts{margin:0}
body[data-page="courses"] .hub-root .facts>div{padding:14px 0;border-top:1px solid rgba(120,120,120,.28)}
body[data-page="courses"] .hub-root .facts dt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#4e5254;margin:0 0 5px;
  font-family:'Josefin Sans';font-weight:600}
body[data-page="courses"] .hub-root .facts dd{margin:0;font-size:16.5px;color:#4b4f52}
body[data-page="courses"] .hub-root .recv{margin:0;padding:0;list-style:none}
body[data-page="courses"] .hub-root .recv li{position:relative;padding-left:17px;margin-bottom:4px}
body[data-page="courses"] .hub-root .recv li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:2px;background:var(--flame)}
body[data-page="courses"] .hub-root .covers{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--muted)}
body[data-page="courses"] .hub-root .covers a{white-space:nowrap}


body[data-page="courses"] .hub-root .buybox{background:#fcfbf9;color:var(--ink);padding:clamp(22px,2.4vw,32px);
  border:1px solid #e0ddd9;box-shadow:0 30px 60px -40px rgba(10,11,12,.4)}
body[data-page="courses"] .hub-root .price{margin:0;font-family:'Josefin Sans';font-size:44px;font-weight:500;line-height:1}
body[data-page="courses"] .hub-root .price span{display:block;font-family:'Saira';font-size:14px;font-weight:300;color:var(--muted);
  letter-spacing:.02em;margin-top:6px}
body[data-page="courses"] .hub-root .buybox-label{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink);margin:26px 0 10px;padding-bottom:9px;border-bottom:2px solid var(--flame)}
body[data-page="courses"] .hub-root .sessions{list-style:none;margin:0;padding:0}
body[data-page="courses"] .hub-root .sessions li{display:grid;grid-template-columns:1fr auto;gap:2px 14px;align-items:center;
  padding:14px 0;border-bottom:1px solid #eceae7}
body[data-page="courses"] .hub-root .when{font-weight:500;font-size:16.5px}
body[data-page="courses"] .hub-root .where{grid-column:1;font-size:14px;color:var(--muted)}
body[data-page="courses"] .hub-root .avail{grid-column:1;font-size:13px;letter-spacing:.02em}
body[data-page="courses"] .hub-root .avail-open{color:#3f7a4f}
body[data-page="courses"] .hub-root .avail-limited{color:#b4551f}
body[data-page="courses"] .hub-root .avail-closed,body[data-page="courses"] .hub-root .avail-full{color:var(--muted)}
body[data-page="courses"] .hub-root .enrol{grid-column:2;grid-row:1/4;align-self:center;font:500 16px/1 'Saira';color:var(--ink);
  background:none;border:0;border-bottom:1.5px solid var(--flame);padding:0 0 2px;cursor:pointer;
  transition:transform .18s ease}
body[data-page="courses"] .hub-root .enrol:hover{transform:translateX(3px)}
body[data-page="courses"] .hub-root .enrol:focus-visible{outline:2px solid var(--flame);outline-offset:4px}
body[data-page="courses"] .hub-root .enrol.solo{font-size:17px;margin-top:6px}
body[data-page="courses"] .hub-root .together{margin:18px 0 0;font-size:14.5px;color:var(--muted)}
body[data-page="courses"] .hub-root .together strong{font-weight:500;color:var(--ink)}
body[data-page="courses"] .hub-root .together a{display:block;width:max-content;margin-top:7px;font-weight:500}
body[data-page="courses"] .hub-root .cohort-crosslink{margin:17px 0 0;padding-top:14px;border-top:1px solid #e6e3e0;font-size:13.5px;line-height:1.5;color:var(--muted)}
body[data-page="courses"] .hub-root .cohort-crosslink a{display:block;width:max-content;max-width:100%;margin-top:4px;font-weight:500}


body[data-page="courses"] .hub-root .track--slate .facts dd,body[data-page="courses"] .hub-root .track--charcoal .facts dd{color:#4b4f52}
body[data-page="courses"] .hub-root .track--slate .facts dt,body[data-page="courses"] .hub-root .track--charcoal .facts dt{color:#4e5254}
body[data-page="courses"] .hub-root .track--slate .facts>div,body[data-page="courses"] .hub-root .track--charcoal .facts>div{border-top-color:rgba(120,120,120,.28)}
body[data-page="courses"] .hub-root .track--slate summary,body[data-page="courses"] .hub-root .track--charcoal summary{color:var(--ink)}
body[data-page="courses"] .hub-root .track--slate details,body[data-page="courses"] .hub-root .track--charcoal details{border-top-color:rgba(120,120,120,.28)}


body[data-page="courses"] .hub-root .more{margin-top:38px;max-width:var(--wrap)}
body[data-page="courses"] .hub-root details{border-top:1px solid rgba(120,120,120,.28)}
body[data-page="courses"] .hub-root summary{cursor:pointer;padding:15px 0;font-family:'Josefin Sans';font-size:18px;font-weight:500;
  list-style:none;display:flex;justify-content:space-between;align-items:center}
body[data-page="courses"] .hub-root summary::-webkit-details-marker{display:none}
body[data-page="courses"] .hub-root summary::after{content:"+";color:var(--flame);font-size:20px;font-weight:400}
body[data-page="courses"] .hub-root details[open] summary::after{content:"\2212"}
body[data-page="courses"] .hub-root .plain{margin:0 0 20px;padding-left:20px}
body[data-page="courses"] .hub-root .plain li{margin-bottom:7px;font-size:16.5px}
body[data-page="courses"] .hub-root .plain-p{margin:0 0 20px;font-size:16.5px;max-width:62ch}
body[data-page="courses"] .hub-root .track--slate .plain li,body[data-page="courses"] .hub-root .track--charcoal .plain li,body[data-page="courses"] .hub-root .track--slate .plain-p,body[data-page="courses"] .hub-root .track--charcoal .plain-p{color:#4b4f52}



body[data-page="courses"] .hub-root .footprint{margin-top:clamp(48px,6vw,72px);display:grid;
  grid-template-columns:minmax(330px,.76fr) minmax(0,1.5fr);
  grid-template-areas:"copy map" "strip strip" "fine fine";
  column-gap:clamp(38px,5vw,74px);row-gap:0;align-items:start;
  background:transparent;border:0;overflow:visible}
body[data-page="courses"] .hub-root .footprint-copy{grid-area:copy;padding:0;background:transparent;border:0;display:block}
body[data-page="courses"] .hub-root .footprint-copy .eyebrow{margin-bottom:18px}
body[data-page="courses"] .hub-root .footprint-copy h3{font-family:'Josefin Sans';font-size:clamp(38px,4.3vw,54px);font-weight:500;
  line-height:1.04;letter-spacing:-.025em;margin:0 0 24px;color:var(--ink);max-width:12ch}
body[data-page="courses"] .hub-root .footprint-deck{font-family:'Josefin Sans';font-size:clamp(19px,1.7vw,23px);line-height:1.45;
  color:#5b5f61;margin:0 0 22px;max-width:34ch}
body[data-page="courses"] .hub-root .footprint-statement{font-family:'Josefin Sans';font-size:clamp(19px,1.65vw,22px);font-weight:600;
  line-height:1.45;color:var(--ink);margin:0 0 16px;max-width:34ch}
body[data-page="courses"] .hub-root .footprint-explainer{font-size:16px;line-height:1.55;color:#55595b;margin:0;max-width:38ch}
body[data-page="courses"] .hub-root .footprint-map{grid-area:map;margin:4px 0 0;padding:0;background:transparent;min-width:0}
body[data-page="courses"] .hub-root .footprint-map .application-map{width:100%;height:auto;display:block;max-width:none;max-height:none}
body[data-page="courses"] .hub-root .footprint-caption{margin:10px 0 0;font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--flame)}
body[data-page="courses"] .hub-root .footprint-caption-note{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--muted);max-width:72ch}
body[data-page="courses"] .hub-root .footprint-strip{grid-area:strip;display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  margin-top:clamp(24px,3vw,38px);border-top:1px solid #d8d4cf;border-bottom:1px solid #d8d4cf}
body[data-page="courses"] .hub-root .footprint-group{padding:18px clamp(14px,2vw,24px);min-width:0}
body[data-page="courses"] .hub-root .footprint-group:first-child{padding-left:0}
body[data-page="courses"] .hub-root .footprint-group+.footprint-group{border-left:1px solid #dedbd6}
body[data-page="courses"] .hub-root .footprint-group b{display:block;font-family:'Josefin Sans';font-size:11.5px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:6px}
body[data-page="courses"] .hub-root .footprint-group span{font-size:15.5px;line-height:1.45;color:#55595b}
body[data-page="courses"] .hub-root .footprint-fine{grid-area:fine;font-size:13px!important;line-height:1.55;color:var(--muted)!important;
  margin:14px 0 0!important;max-width:92ch}


body[data-page="courses"] .hub-root .compare-wrap{padding:clamp(56px,8vh,92px) 0;border-bottom:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .compare{width:100%;border-collapse:collapse;margin-top:10px}
body[data-page="courses"] .hub-root .compare th,body[data-page="courses"] .hub-root .compare td{text-align:left;padding:15px 18px;border-bottom:1px solid #e6e3e0;
  font-size:16px;vertical-align:top}
body[data-page="courses"] .hub-root .compare thead th{font-family:'Josefin Sans';font-size:22px;font-weight:500;
  border-bottom:2px solid var(--charcoal)}
body[data-page="courses"] .hub-root .compare tbody th{font-weight:400;color:var(--muted);font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;font-family:'Josefin Sans'}


body[data-page="courses"] .hub-root .ways{padding:clamp(56px,8vh,92px) 0;background:#faf9f8;border-bottom:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .ways-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:10px}
body[data-page="courses"] .hub-root .way{background:var(--white);border:1px solid #e6e3e0;padding:clamp(22px,2.4vw,32px)}
body[data-page="courses"] .hub-root .way .fn{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--muted);font-family:'Josefin Sans';margin:0 0 6px}
body[data-page="courses"] .hub-root .way h3{font-size:28px;margin-bottom:8px}
body[data-page="courses"] .hub-root .way .sub{color:var(--muted);margin:0 0 18px;font-size:16px}
body[data-page="courses"] .hub-root .way .fig{font-family:'Josefin Sans';font-size:30px;font-weight:500}
body[data-page="courses"] .hub-root .way .fig small{display:block;font-family:'Saira';font-size:14px;font-weight:300;color:var(--muted);margin-top:4px}
body[data-page="courses"] .hub-root .way ul{list-style:none;margin:0 0 18px;padding:0}
body[data-page="courses"] .hub-root .way ul li{display:flex;justify-content:space-between;gap:16px;padding:9px 0;
  border-bottom:1px solid #eceae7;font-size:16px}
body[data-page="courses"] .hub-root .way ul li span{color:var(--muted);font-size:14.5px}
body[data-page="courses"] .hub-root .note{margin:22px 0 0;font-size:14.5px;color:var(--muted);max-width:70ch}


body[data-page="courses"] .hub-root .cohorts{padding:clamp(56px,8vh,92px) 0;border-bottom:1px solid #e6e3e0}
body[data-page="courses"] .hub-root .cohort-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:10px}
body[data-page="courses"] .hub-root .cohort{border:1px solid #e6e3e0;padding:26px}
body[data-page="courses"] .hub-root .cohort h3{font-size:21px;margin-bottom:8px}
body[data-page="courses"] .hub-root .cohort p{margin:0 0 14px;color:var(--muted);font-size:15.5px}
body[data-page="courses"] .hub-root .cohort .cadence{font-size:13px;letter-spacing:.02em;color:#4e5254;font-weight:400}


body[data-page="courses"] .hub-root .before{padding:clamp(56px,8vh,92px) 0;background:var(--charcoal);color:#fff}
body[data-page="courses"] .hub-root .before h2{font-size:clamp(30px,3.4vw,42px)}
body[data-page="courses"] .hub-root .before-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,52px);margin-top:34px}
body[data-page="courses"] .hub-root .before h3{font-size:20px;margin-bottom:10px;color:#fff}
body[data-page="courses"] .hub-root .before p,body[data-page="courses"] .hub-root .before li{color:#d9d6d2;font-size:16px}
body[data-page="courses"] .hub-root .before ul{list-style:none;margin:0;padding-left:0}
body[data-page="courses"] .hub-root .before ul li{position:relative;padding-left:22px}
body[data-page="courses"] .hub-root .before ul li::before{content:"";position:absolute;left:0;top:.68em;width:7px;height:2px;background:var(--flame)}
body[data-page="courses"] .hub-root .before-grid>div>p:first-of-type{margin-bottom:18px}
body[data-page="courses"] .hub-root .before-note{margin-top:18px;padding-top:16px;border-top:1px solid rgba(212,207,201,.28)}
body[data-page="courses"] .hub-root .before li{margin-bottom:7px}
body[data-page="courses"] .hub-root .before ol{counter-reset:s;list-style:none;margin:0;padding:0}
body[data-page="courses"] .hub-root .before ol li{counter-increment:s;padding-left:34px;position:relative;margin-bottom:13px}
body[data-page="courses"] .hub-root .before ol li::before{content:counter(s);position:absolute;left:0;top:1px;color:#fff;
  font-family:'Josefin Sans';font-weight:600;font-size:15px;border-bottom:2px solid var(--flame);line-height:1.2}


body[data-page="courses"] .hub-root .closing{padding:clamp(56px,8vh,92px) 0}
body[data-page="courses"] .hub-root .closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px)}
body[data-page="courses"] .hub-root .closing h2{font-size:clamp(26px,3vw,36px);margin-bottom:10px}
body[data-page="courses"] .hub-root .closing p{color:var(--muted);max-width:46ch}


body[data-page="courses"] .hub-root .drawer{position:fixed;right:0;bottom:0;top:0;width:min(400px,100%);background:var(--white);
  border-left:1px solid #e0ddd9;box-shadow:-40px 0 80px -50px rgba(10,11,12,.5);
  transform:translateX(100%);transition:transform .3s ease;z-index:50;
  display:flex;flex-direction:column;visibility:hidden}
body[data-page="courses"] .hub-root .drawer.open{transform:none;visibility:visible}
body[data-page="courses"] .hub-root .drawer header{padding:24px 26px 16px;border-bottom:1px solid #eceae7;
  display:flex;justify-content:space-between;align-items:center}
body[data-page="courses"] .hub-root .drawer h2{font-size:22px}
body[data-page="courses"] .hub-root .drawer .close{background:none;border:0;font-size:24px;line-height:1;cursor:pointer;color:var(--muted)}
body[data-page="courses"] .hub-root .drawer .body{padding:20px 26px;overflow:auto;flex:1}
body[data-page="courses"] .hub-root .drawer .line{padding:14px 0;border-bottom:1px solid #eceae7}
body[data-page="courses"] .hub-root .drawer .line b{font-weight:500;display:block}
body[data-page="courses"] .hub-root .drawer .line span{color:var(--muted);font-size:14.5px}
body[data-page="courses"] .hub-root .choose h3{font-size:19px;margin:0 0 4px}
body[data-page="courses"] .hub-root .choose .ctx{color:var(--muted);font-size:14.5px;margin:0 0 18px}
body[data-page="courses"] .hub-root .choose button{display:flex;justify-content:space-between;align-items:center;width:100%;
  background:none;border:1px solid #e0ddd9;border-radius:6px;padding:15px 17px;margin-bottom:10px;
  font:400 16.5px/1 'Saira';color:var(--ink);cursor:pointer;text-align:left}
body[data-page="courses"] .hub-root .choose button:hover{border-color:var(--flame)}
body[data-page="courses"] .hub-root .choose button b{font-family:'Josefin Sans';font-weight:500;font-size:19px}
body[data-page="courses"] .hub-root .choose button i{font-style:normal;color:var(--muted);font-size:13px;display:block;margin-top:3px}
body[data-page="courses"] .hub-root .drawer .foot{padding:20px 26px;border-top:1px solid #eceae7;display:grid;gap:12px}
body[data-page="courses"] .hub-root .drawer .total{display:flex;justify-content:space-between;font-family:'Josefin Sans';font-size:21px}
body[data-page="courses"] .hub-root .btn-primary{background:var(--charcoal);color:#fff;border:0;border-radius:6px;padding:14px;
  box-shadow:inset 0 -3px 0 var(--flame);font:500 17px/1 'Saira';cursor:pointer}
body[data-page="courses"] .hub-root .btn-quiet{background:none;border:0;color:var(--muted);font:400 15px/1 'Saira';cursor:pointer;
  padding:6px;text-decoration:underline;text-underline-offset:3px}
body[data-page="courses"] .hub-root .count{position:fixed;top:18px;right:18px;z-index:40;background:var(--charcoal);color:#fff;
  border:0;border-radius:100px;padding:11px 18px;font:500 14px/1 'Saira';cursor:pointer;
  box-shadow:0 16px 34px -18px rgba(10,11,12,.6);display:none;align-items:center;gap:9px}
body[data-page="courses"] .hub-root .count.show{display:inline-flex}
body[data-page="courses"] .hub-root .count b{background:#fff;color:var(--charcoal);border:2px solid var(--flame);border-radius:100px;padding:1px 7px;font-weight:600}

@media (max-width:880px){
  body[data-page="courses"] .hub-root .hero{min-height:100svh}
  body[data-page="courses"] .hub-root .hero-copy{padding:calc(var(--nav-h) + 54px) clamp(20px,6vw,44px) 54px}
  body[data-page="courses"] .hub-root .hero-copy-inner{width:100%;margin:0}
  body[data-page="courses"] .hub-root .hero h1{max-width:12ch}
  body[data-page="courses"] .hub-root .hero .eyebrow{margin-bottom:28px}
  body[data-page="courses"] .hub-root .hero-media img{object-position:58% center}
  body[data-page="courses"] .hub-root .hero-media::after{background:linear-gradient(180deg,rgba(22,25,27,.48) 0%,rgba(22,25,27,.3) 24%,rgba(22,25,27,.18) 100%)}
  body[data-page="courses"] .hub-root .glance-grid,body[data-page="courses"] .hub-root .cohort-grid,body[data-page="courses"] .hub-root .before-grid,body[data-page="courses"] .hub-root .ways-grid,body[data-page="courses"] .hub-root .closing-grid{grid-template-columns:1fr}
  body[data-page="courses"] .hub-root .glance-card+.glance-card{border-left:0;border-top:1px solid #e6e3e0}
  body[data-page="courses"] .hub-root .decide{grid-template-columns:1fr}
  body[data-page="courses"] .hub-root .footprint{grid-template-columns:1fr;grid-template-areas:"copy" "map" "strip" "fine";row-gap:0;column-gap:0;margin-top:46px}
  body[data-page="courses"] .hub-root .footprint-copy h3{font-size:28px;line-height:1.08;letter-spacing:-.03em;max-width:100%;white-space:normal}
  body[data-page="courses"] .hub-root .footprint-deck{font-size:16px;line-height:1.5;margin-bottom:16px;max-width:none}
  body[data-page="courses"] .hub-root .footprint-statement{font-size:17px;line-height:1.45;max-width:none;margin-bottom:12px}
  body[data-page="courses"] .hub-root .footprint-explainer{font-size:15px;max-width:none}
  body[data-page="courses"] .hub-root .footprint-map{margin-top:20px}
  body[data-page="courses"] .hub-root .footprint-caption{margin-top:9px}
  body[data-page="courses"] .hub-root .footprint-caption-note{font-size:11.5px}
  body[data-page="courses"] .hub-root .footprint-strip{grid-template-columns:1fr;margin-top:22px}
  body[data-page="courses"] .hub-root .footprint-group{padding:14px 0}
  body[data-page="courses"] .hub-root .footprint-group+.footprint-group{border-left:0;border-top:1px solid #dedbd6}
  body[data-page="courses"] .hub-root .footprint-group,body[data-page="courses"] .hub-root .footprint-fine{max-width:none}
  
  body[data-page="courses"] .hub-root .compare thead{display:none}
  body[data-page="courses"] .hub-root .compare,body[data-page="courses"] .hub-root .compare tbody,body[data-page="courses"] .hub-root .compare tr,body[data-page="courses"] .hub-root .compare th,body[data-page="courses"] .hub-root .compare td{display:block;width:100%}
  body[data-page="courses"] .hub-root .compare tbody{display:grid;gap:0}
  body[data-page="courses"] .hub-root .compare tr{border-bottom:0}
  body[data-page="courses"] .hub-root .compare tbody th{padding:18px 0 6px 10px;border-bottom:0;color:var(--ink);border-left:3px solid var(--flame)}
  body[data-page="courses"] .hub-root .compare td{padding:7px 0 7px 44%;position:relative;border-bottom:1px solid #eceae7}
  body[data-page="courses"] .hub-root .compare td::before{position:absolute;left:0;top:7px;font-family:'Josefin Sans';font-weight:500;
    color:var(--ink);content:attr(data-col)}
}
@media (prefers-reduced-motion:reduce){
  body[data-page="courses"] .hub-root{scroll-behavior:auto} body[data-page="courses"] .hub-root *{transition:none!important}
}





:root{ --flame-ink:#B8400F; }


body[data-page="courses"] .hub-root .eyebrow,body[data-page="courses"] .hub-root .covers a,body[data-page="courses"] .hub-root .together a,body[data-page="courses"] .hub-root .start a,body[data-page="courses"] .hub-root .way .fig small,body[data-page="courses"] .hub-root .footprint-fine a,body[data-page="courses"] .hub-root .compare tbody th,body[data-page="courses"] .hub-root .cohort .cadence a,body[data-page="courses"] .hub-root .closing a,body[data-page="courses"] .hub-root .avail-limited,body[data-page="courses"] .hub-root .enrol{ color:var(--flame-ink) }
body[data-page="courses"] .hub-root .skip{ background:var(--charcoal);color:#fff }
body[data-page="courses"] .hub-root a{ color:var(--flame-ink);border-bottom-color:var(--flame-ink) }

body[data-page="courses"] .hub-root h1 span,body[data-page="courses"] .hub-root .hero h1 span,body[data-page="courses"] .hub-root .way h3,body[data-page="courses"] .hub-root .price,body[data-page="courses"] .hub-root .glance-card .p{ color:inherit }
body[data-page="courses"] .hub-root .hero h1 span{ color:var(--flame) }
body[data-page="courses"] .hub-root .step span.on,body[data-page="courses"] .hub-root .recv li::before{ background:var(--flame) }




/* The site-standard approved footer, same asset every other page uses. */
body[data-page="courses"] .hub-approved-footer{display:block;width:100%;height:auto;margin:0}
/* Anchor aliases keep the existing course.html#… link names resolving. */
body[data-page="courses"] .hub-root .anchor-alias{display:block;height:0;scroll-margin-top:96px}
body[data-page="courses"] .hub-root section[id],
body[data-page="courses"] .hub-root div[id]{scroll-margin-top:96px}
@supports not (height:100svh){body[data-page="courses"] .hub-root .hero{min-height:100vh}}

/* ==========================================================================
   CHECKOUT — normal document flow.
   The Figma export positioned every element at a baked pixel offset, so one
   extra field meant hand-shifting everything below it. Nothing here is
   absolutely positioned; the page grows with its content.
   ========================================================================== */
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co{max-width:1100px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 120px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-head{padding:clamp(90px,12vh,150px) 0 clamp(24px,4vh,44px);text-align:center}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-eyebrow{margin:0 0 12px;font:600 12px/1 'Josefin Sans',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#B8400F}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-head h1{margin:0;font:400 clamp(34px,4.6vw,58px)/1.05 'Josefin Sans',sans-serif;color:#383E42;letter-spacing:-.015em}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-head h1 span{color:#F05F24}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-wrap{display:grid;gap:clamp(18px,2.4vw,28px)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card{background:#DAD5CF;border-radius:14px;padding:clamp(22px,3vw,34px)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card h2{margin:0 0 6px;font:500 clamp(21px,2.1vw,27px)/1.2 'Josefin Sans',sans-serif;color:#383E42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card h3{margin:26px 0 10px;font:500 19px/1.2 'Josefin Sans',sans-serif;color:#383E42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-note{margin:10px 0 0;font:300 15.5px/1.55 'Saira',sans-serif;color:#4e5254;max-width:70ch}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-summary{margin:18px 0 0;display:grid;gap:0}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-summary>div{display:grid;grid-template-columns:170px 1fr;gap:16px;padding:11px 0;border-top:1px solid rgba(56,62,66,.16)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-summary dt{font:600 12px/1.6 'Josefin Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5c6063}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-summary dd{margin:0;font:400 16.5px/1.5 'Saira',sans-serif;color:#383E42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats{margin:22px 0 0;padding:0;border:0;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats legend{padding:0 0 10px;font:600 12px/1 'Josefin Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5c6063}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats label{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid rgba(56,62,66,.22);border-radius:8px;padding:14px 16px;cursor:pointer;font:400 16px/1 'Saira',sans-serif}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats label.is-on{border-color:#F05F24;box-shadow:inset 0 0 0 1px #F05F24}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats input{accent-color:#F05F24;margin:0}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats b{font:500 18px/1 'Josefin Sans',sans-serif}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-span2{grid-column:span 2}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-span3{grid-column:span 3;margin:2px 0 0}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid label{display:grid;gap:6px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid label>span{font:600 11.5px/1 'Josefin Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5c6063}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid input,
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid select{width:100%;height:52px;padding:0 15px;background:#fff!important;border:1px solid rgba(56,62,66,.3)!important;border-radius:8px!important;font:400 16.5px/1 'Saira',sans-serif;color:#383E42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid input:focus,
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid select:focus{outline:2px solid #F05F24;outline-offset:1px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid input:disabled{background:#efece9!important;color:#8d9194}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-block{margin:14px 0 0;padding:12px 15px;background:#fdeee8;border-left:3px solid #B8400F;border-radius:4px;font:400 15.5px/1.5 'Saira',sans-serif;color:#7E2707}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-legal{margin-top:10px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-doc{padding:15px 0;border-top:1px solid rgba(56,62,66,.16)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-doc-head{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-doc-title{margin:0;font:500 16.5px/1.4 'Saira',sans-serif;color:#383E42;max-width:56ch}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-doc-title em{font-style:normal;color:#B8400F;font-size:13.5px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-doc-blurb{margin:4px 0 0;font:300 14.5px/1.5 'Saira',sans-serif;color:#5c6063}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-open{background:none;border:0;border-bottom:1.5px solid currentColor;padding:0 0 2px;color:#B8400F;font:500 15.5px/1 'Saira',sans-serif;cursor:pointer;white-space:nowrap}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-accept{display:flex;gap:11px;align-items:flex-start;margin-top:12px;font:400 15.5px/1.5 'Saira',sans-serif;color:#383E42;cursor:pointer}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-accept.is-locked{color:#8d9194;cursor:not-allowed}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-accept input{accent-color:#F05F24;width:18px;height:18px;margin:2px 0 0;flex:none}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-sign{display:grid;gap:6px;margin-top:22px;max-width:460px}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-sign>span{font:600 11.5px/1 'Josefin Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5c6063}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-sign input{height:52px;padding:0 15px;background:#fff!important;border:1px solid rgba(56,62,66,.3)!important;border-radius:8px!important;font:400 18px/1 'Saira',sans-serif;color:#383E42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review{background:#383E42;color:#fff}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review h2{color:#fff}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review .co-summary>div{border-top-color:rgba(255,255,255,.2)}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review dt{color:#c9cccd}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review dd{color:#fff}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-review .co-note{color:#d9d6d2}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-submit{margin-top:22px;width:100%;min-height:56px;border:0;border-radius:8px;background:#B8400F;color:#fff;font:500 18px/1 'Saira',sans-serif;cursor:pointer}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-submit:disabled{background:rgba(255,255,255,.14);color:#a9adb0;cursor:not-allowed}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-ok{margin:14px 0 0;font:400 15.5px/1.5 'Saira',sans-serif;color:#8fd4a4}
@media (max-width:820px){
  :is(body[data-page="checkout"],body[data-page="confirmation"]) .co-grid,
  :is(body[data-page="checkout"],body[data-page="confirmation"]) .co-seats{grid-template-columns:1fr}
  :is(body[data-page="checkout"],body[data-page="confirmation"]) .co-span2,
  :is(body[data-page="checkout"],body[data-page="confirmation"]) .co-span3{grid-column:auto}
  :is(body[data-page="checkout"],body[data-page="confirmation"]) .co-summary>div{grid-template-columns:1fr}
}
.co-wrap > form { display: grid; gap: clamp(18px,2.4vw,28px); } .co-card > label { display: block; margin-top: 16px; } .co-card > label > input:not([type=checkbox]) { display: block; width: 100%; padding: 10px; border: 1px solid #777; border-radius: 6px; } .co-card p + button, .co-card label + button { margin-top: 16px; }

/* Transactional pages use the approved checkout typography in normal flow. */
:is(body[data-page="checkout"],body[data-page="confirmation"]) main.co{width:100%!important;min-width:0!important;max-width:1100px!important;zoom:1!important;height:auto!important;min-height:400px;display:block!important;background:transparent!important;padding:0 clamp(16px,4vw,40px) 80px!important;margin:0 auto!important;transform:none!important}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .site-header:not(.is-stuck):not(.has-panel){background:#383e42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-head{padding-top:130px!important}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card p{font:400 16px/1.6 Saira,sans-serif}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card input:not([type=checkbox]):not([type=radio]),:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card select{background:white;border:1px solid #777;border-radius:6px;padding:10px;color:#383e42;max-width:100%}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card button.brand-button,:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card a.brand-button{background:#b8400f;color:white;border-radius:6px;padding:12px 21px;font:500 18px/1.3 Saira,sans-serif;min-height:44px;display:inline-flex;margin-top:16px}
.transaction-footer.site-footer{position:relative!important;top:auto!important;left:auto!important;width:100%!important;height:auto!important;margin:0!important;background:#0a0b0c;color:white}
.transaction-footer .footer-hotspots{display:none!important}.transaction-footer .footer-native{display:block!important;max-width:1440px;margin:auto;padding:56px 32px}
.transaction-footer .footer-intro{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px;margin-bottom:48px}.transaction-footer .footer-intro h2{font:600 40px/1.1 'Josefin Sans',sans-serif;margin-bottom:16px}.transaction-footer .footer-native p,.transaction-footer .footer-native label{font:300 16px/1.5 Saira,sans-serif;color:#d4cfc9}.transaction-footer .footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px}.transaction-footer .footer-columns>p{max-width:300px}.transaction-footer .footer-columns h3{font:400 14px Saira,sans-serif;color:#d4cfc9;margin-bottom:16px}.transaction-footer .footer-columns nav{display:flex;flex-direction:column;gap:12px;font:16px Saira,sans-serif}.transaction-footer .newsletter input{color:white;background:transparent;border-bottom:1px solid #777;width:90%;padding:12px 0}.transaction-footer .newsletter button{color:#f05f24;font-size:24px}.transaction-footer .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;margin-top:48px;font:14px Saira,sans-serif}.transaction-footer .footer-contact{display:flex;flex-direction:column;gap:8px}

.transaction-footer-art{display:none}
@media(min-width:1200px){
 .transaction-footer.site-footer{width:1920px!important;height:980px!important;zoom:var(--accuracy-desktop-scale,1);overflow:hidden}
 .transaction-footer .footer-native{display:none!important}
 .transaction-footer .footer-hotspots{display:block!important;position:absolute;inset:0}
 .transaction-footer-art{display:block;width:1920px;height:980px}
}

:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-head{display:block!important}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co{font:400 16px/1.6 Saira,sans-serif;color:#383e42}
:is(body[data-page="checkout"],body[data-page="confirmation"]) .co-card .brand-button{background:#b8400f!important;color:#fff!important;border:1px solid #b8400f!important;text-decoration:none!important}
.co-card form>label{display:grid;gap:8px;margin-top:16px}.co-card button:disabled{opacity:.55;cursor:not-allowed}
.co-card input[type=checkbox],.co-card input[type=radio]{appearance:auto!important;width:22px!important;height:22px!important;min-height:22px!important;min-width:22px!important;flex:none;accent-color:#b8400f;margin-right:10px;vertical-align:middle}
.co-card input:focus-visible,.co-card select:focus-visible,.co-card button:focus-visible{outline:2px solid #b8400f!important;outline-offset:3px}
.transaction-footer .desktop-newsletter input{background:#181411}
.transaction-footer .desktop-newsletter input:focus{background:#181411}
.co-card a:not(.brand-button){text-decoration:underline;text-underline-offset:3px}
.registration-policy-links{display:flex;flex-wrap:wrap;gap:8px 18px;font:14px/1.5 Saira,sans-serif;margin:16px 0}
.co-card fieldset{margin-top:18px}.co-card fieldset>label{display:block;margin:12px 0}.co-card iframe{margin-top:18px}

/* Footer repair: live controls over the approved SVG; no replacement brand art. */
.site-footer{z-index:4}.footer-hotspots{position:absolute;inset:0;pointer-events:none}.footer-hotspots>*{pointer-events:auto}.footer-hotspots a:focus-visible{outline:2px solid #f05f24;outline-offset:2px}
.footer-legal{display:flex;flex-wrap:wrap;gap:8px 16px;font:14px/1.4 Saira,sans-serif}.footer-legal [aria-disabled=true]{cursor:not-allowed}.footer-legal a{text-decoration:none}.footer-legal a:hover{text-decoration:underline}
.footer-hotspots .footer-legal-desktop{left:1275px;top:697px;width:310px;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;color:#d4cfc9;font:14px/1.4 Saira,sans-serif}
.footer-social{display:flex;gap:24px;margin-top:24px;font:16px Saira,sans-serif}.footer-social a{color:#f05f24}
.footer-newsletter label{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden;clip-path:inset(50%)}
.transaction-footer .desktop-newsletter input,.transaction-footer .desktop-newsletter input:focus{background:rgba(255,255,255,.06)}
@media(min-width:1200px){.site-footer>.footer-social{display:none}.footer-hotspots{display:block}.site-footer .footer-legal-desktop{display:grid}}
body[data-page=courses] .hub-interactive-footer.site-footer{position:relative!important;inset:auto!important;width:1920px!important;height:980px!important;zoom:var(--accuracy-desktop-scale,1);margin:0!important;max-width:none!important;padding:0!important;overflow:hidden}
body[data-page=courses] .hub-interactive-footer .footer-native{display:none!important}
body[data-page=courses] .hub-interactive-footer .transaction-footer-art{display:block!important;width:1920px;height:980px;max-width:none}
body[data-page=courses] .hub-interactive-footer .footer-hotspots{display:block!important}
body[data-page=courses] .hub-interactive-footer .desktop-newsletter{display:flex!important}

/* Approved footer: no decorative link rules in any interaction state. */
.site-footer :is(.footer-columns nav,.footer-social,.footer-hotspots) a:not(.footer-cta):not(.brand-button),
.site-footer :is(.footer-columns nav,.footer-social,.footer-hotspots) a:not(.footer-cta):not(.brand-button):is(:hover,:active,:visited,:focus){text-decoration:none!important;border-bottom:0!important;box-shadow:none!important;background-image:none!important}
.site-footer :is(.footer-columns nav,.footer-social,.footer-hotspots) a:not(.footer-cta)::before,
.site-footer :is(.footer-columns nav,.footer-social,.footer-hotspots) a:not(.footer-cta)::after{content:none!important;display:none!important}
.site-footer :is(.footer-columns nav,.footer-social) a,.site-footer :is(.footer-columns nav,.footer-social) a:visited{color:#d4cfc9}
.site-footer :is(.footer-columns nav,.footer-social) a:hover{color:#f05f24}
.site-footer a:focus-visible{outline:2px solid #f05f24!important;outline-offset:4px!important}

/* Audience typography: one shared rule per text role, never scaled by copy length. */
.audience-card-art{position:relative;overflow:hidden;border-radius:10px;background-repeat:no-repeat;background-color:#0a0b0c}
.audience-card-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(56,62,66,.07) 0px,rgba(56,62,66,.07) 200px,rgba(56,62,66,.40) 300px,rgba(56,62,66,.78) 400px,#383e42 500px),rgba(0,0,0,.30);pointer-events:none}
.audience-card-arrow{position:absolute;top:38px;right:44px;z-index:1}
.audience-card-copy{position:absolute!important;left:38px!important;right:36px!important;bottom:32px!important;top:auto!important;width:314px!important;height:auto!important;z-index:1;display:flex!important;flex-direction:column!important;gap:16px!important}
body[data-page=home] .audience-card .audience-card-heading{position:static!important;margin:0!important;width:100%!important;height:auto!important;max-height:none!important;font-family:'Josefin Sans',Helvetica,sans-serif!important;font-size:24px!important;font-weight:400!important;line-height:30px!important;letter-spacing:-.96px!important;color:#fff!important;white-space:normal!important;transform:none!important}
body[data-page=home] .audience-card .audience-card-body{position:static!important;margin:0!important;width:100%!important;height:auto!important;max-height:none!important;font-family:'Saira',Helvetica,sans-serif!important;font-size:18px!important;font-weight:300!important;line-height:26px!important;letter-spacing:.36px!important;color:#fff!important;opacity:.75;white-space:normal!important;transform:none!important}

/* FAQ rows use one normal-flow layout in both states. */
#all-faqs.faq-list{display:flex;flex-direction:column;gap:32px;width:100%;height:auto;flex-shrink:0}
#all-faqs .faq-item{display:flex;flex-direction:column;position:static;width:100%;height:auto;flex:none}
#all-faqs .faq-question{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:34px;padding:0 0 13px;margin:0;text-align:left;background:none;border:0;cursor:pointer}
#all-faqs .faq-question span{font-family:'Josefin Sans',Helvetica,sans-serif;font-size:24px;font-weight:400;line-height:34px;letter-spacing:-.72px}
#all-faqs .faq-question-primary{color:#f05f24}
#all-faqs .faq-question-secondary{color:#383e42;opacity:.65}
#all-faqs .faq-question:focus-visible{outline:2px solid #f05f24;outline-offset:4px}
#all-faqs .faq-toggle-icon{display:block;width:24px;height:24px;flex:0 0 24px}
#all-faqs .faq-item.is-open .faq-question{padding-bottom:0}
#all-faqs .faq-answer{position:static;inset:auto;margin:16px 0 0;padding:0 0 20px;width:100%;height:auto;font-family:'Saira',Helvetica,sans-serif;font-size:20px;font-weight:400;line-height:30px;letter-spacing:.4px;color:#383e42}
#all-faqs .faq-divider{display:block;width:100%;height:1px;flex:none;margin:0;object-fit:fill}
#all-faqs .faq-item:first-child .faq-divider{height:2px}
@media(max-width:1199.98px){#all-faqs.faq-list{gap:24px}#all-faqs .faq-question span{letter-spacing:normal;line-height:1.4}#all-faqs .faq-answer{letter-spacing:normal}}

/* Approved schedule content: same palette and type, variable-height course records. */
.schedule-root{background:#d4cfc9;color:#383e42;width:100%;min-width:0;position:relative;padding:160px 24px 80px;font-family:Saira,Helvetica,sans-serif}
.schedule-heading{text-align:center;max-width:900px;margin:0 auto 56px}
.schedule-heading h1{font-family:'Josefin Sans',Helvetica,sans-serif;font-size:96px;font-weight:600;line-height:1;letter-spacing:-5.76px;margin:0 0 32px}.schedule-heading h1 span{color:#f05f24}
.schedule-heading p{font-size:20px;line-height:30px}.schedule-content{max-width:1195px;margin:auto}
.schedule-filter{display:block;max-width:711px;margin:0 auto 48px;font-size:20px}.schedule-filter select{display:block;width:100%;padding:18px 24px;margin-top:12px;border:1px solid #f05f2440;border-radius:12px;background:#dad5cf;color:#383e42;font:24px 'Josefin Sans',sans-serif}
.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.schedule-card{background:#dad5cf;border-radius:12px;padding:32px;scroll-margin-top:120px;overflow-wrap:anywhere}.schedule-card h2{font:500 32px/1.2 'Josefin Sans',sans-serif;letter-spacing:-1px;margin:24px 0}.schedule-card p,.schedule-card dd{font-size:20px;line-height:1.5}.schedule-card p{margin:18px 0}.schedule-card dt{font-size:14px;text-transform:uppercase;letter-spacing:1px;margin-top:24px}.schedule-card dd{margin:8px 0 0}.schedule-card ul{list-style:none;padding:0;margin:0}.schedule-card li+li{margin-top:20px}.schedule-card .eyebrow{color:#f05f24;font:400 24px/34px 'Josefin Sans',sans-serif}.schedule-card .schedule-price{font:400 32px 'Josefin Sans',sans-serif}.schedule-price span{font:16px Saira,sans-serif}.schedule-status{color:#b8400f}.schedule-note{margin-top:32px;font-size:18px;line-height:1.5}
@media(max-width:1000px){.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-heading h1{font-size:56px}}
@media(max-width:600px){.schedule-root{padding-top:130px}.schedule-grid{grid-template-columns:1fr}.schedule-heading h1{font-size:44px;letter-spacing:-1.5px}.schedule-card{padding:24px}}

/* Isolate the restored calendar from the legacy exported-canvas mobile rules. */
body[data-page="calendar"] main.schedule-root{display:block!important;min-width:0!important;width:100%!important;height:auto!important;padding:160px 24px 80px!important}
body[data-page="calendar"] main.schedule-root>.schedule-heading{display:block!important;position:static!important}
body[data-page="calendar"] .schedule-filter{display:block!important}
@media(max-width:600px){body[data-page="calendar"] main.schedule-root{padding-top:130px!important}}

/* Equipment questions must wrap inside narrow checkout columns. */
.co .equipment-fields{min-width:0;width:100%;box-sizing:border-box;}
.co .equipment-fields legend{max-width:100%;white-space:normal;overflow-wrap:break-word;}
.co .equipment-fields label,.co .equipment-fields .co-grid{min-width:0;max-width:100%;}
.co .equipment-fields input:not([type=radio]),.co .equipment-fields select{min-width:0;width:100%;max-width:100%;box-sizing:border-box;}

.co .co-wrap>form{min-width:0;grid-template-columns:minmax(0,1fr);}
.co .co-wrap>form>.co-card{min-width:0;}
.co .co-note select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;}

.co .equipment-fields fieldset{min-width:0;max-width:100%;}

/* NJ page only. Accuracy Style Guide Final: exact five-color palette.
   Josefin Sans Semibold for headings; Saira Regular for supporting text.
   No color derivation, gradients, filters, shadows or logo effects. */
body[data-page="new-jersey"]{background:#D4CFC9;color:#383E42;}
body[data-page="new-jersey"] main.nj-root{display:block!important;width:100%!important;min-width:0!important;height:auto!important;zoom:1!important;transform:none!important;padding:128px max(24px,calc((100% - 1120px)/2)) 80px!important;background:#D4CFC9;color:#383E42;font:400 18px/1.6 Saira,sans-serif;}
.nj-root,.nj-root *{box-sizing:border-box;}
.nj-root h1,.nj-root h2,.nj-root h3,.nj-root legend{font-family:'Josefin Sans',sans-serif;font-weight:600;line-height:1.2;color:inherit;}
.nj-root h1{font-size:64px;letter-spacing:-1.5px;margin:0 0 28px;}
.nj-root h2{font-size:40px;margin:0 0 24px;}
.nj-root h3{font-size:28px;margin:0 0 16px;}
.nj-root p{margin:16px 0;}
.nj-root .eyebrow{font:400 15px/1.5 Saira,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#525455;margin:0 0 20px;}
.nj-root a{color:#383E42;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;}
.nj-root a:hover{color:#383E42;text-decoration-thickness:3px;}
.nj-root a:visited{color:#383E42;}
.nj-root blockquote{font:600 30px/1.3 'Josefin Sans',sans-serif;border-left:4px solid #F05F24;padding:8px 0 8px 24px;margin:32px 0;}
.nj-root>section{margin:64px 0;scroll-margin-top:112px;}
body[data-page="new-jersey"] main.nj-root>.nj-hero{display:block!important;position:static!important;background:#383E42;color:#FFFFFF;padding:40px;}
.nj-root .nj-hero .eyebrow{color:#FFFFFF;}
.nj-root .nj-hero h1 span{color:#F05F24;}
.nj-root .nj-hero p{max-width:900px;}
.nj-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.nj-choices article{border-top:4px solid #F05F24;background:#FFFFFF;padding:32px;display:flex;flex-direction:column;align-items:flex-start;}
.nj-choices article h2{font-size:30px;margin-bottom:8px;}
.nj-choices article a{margin-top:auto;}
.nj-root .nj-price{font:600 32px/1.3 'Josefin Sans',sans-serif;}
/* Connected editorial bands: one sequence, no unequal-height stage cards. */
.nj-stages{margin:32px 0;background:#FFFFFF;}
.nj-stages article{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);column-gap:40px;padding:28px 32px;border-top:1px solid #525455;}
.nj-stages article:first-child{border-top:4px solid #F05F24;}
.nj-stages article .eyebrow{grid-column:1;grid-row:1;margin-bottom:10px;}
.nj-stages article h3{grid-column:1;grid-row:2 / span 3;margin:0;}
.nj-stages article p:not(.eyebrow){grid-column:2;margin:0 0 12px;}
.nj-stages article p:last-child{margin-bottom:0;}
.nj-price-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;background:#383E42;color:#FFFFFF;padding:40px;border-top:4px solid #F05F24;margin:32px 0;}
.nj-root .nj-price-summary .eyebrow{color:#FFFFFF;}
.nj-root .nj-price-summary h3{font-size:36px;}
.nj-value{border-left:1px solid #FFFFFF;padding-left:40px;}
.nj-root .nj-value-price{font:600 76px/1.1 'Josefin Sans',sans-serif;color:#F05F24;margin:0;}
.nj-root .nj-value-saving{font:600 28px/1.3 'Josefin Sans',sans-serif;margin:12px 0;}
.nj-root ul{padding-left:24px;}
.nj-root .nj-requalification{background:#383E42;color:#FFFFFF;padding:40px;border-top:4px solid #F05F24;margin-bottom:0;}
.nj-root .nj-requalification .eyebrow,.nj-root .nj-requalification a{color:#FFFFFF;}
.nj-root .nj-requalification h2{font-size:64px;}
.nj-root .nj-requalification h2 span{color:#F05F24;}
.nj-root .nj-state-rule{margin-top:0;background:#FFFFFF;padding:32px 40px;}
.nj-root .nj-state-rule h2{font-size:28px;}
/* Semantic radio groups remain native controls with visible branded labels. */
.nj-root fieldset{border:0;margin:0;padding:0;min-width:0;}
.nj-root .nj-booking-group{margin:32px 0 40px;}
.nj-root legend,.nj-root .nj-select{display:block;max-width:100%;padding:0;margin:0 0 18px;font:600 24px/1.35 'Josefin Sans',sans-serif;color:#383E42;}
.nj-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.nj-root .nj-option{display:flex;align-items:flex-start;gap:16px;position:relative;width:100%;padding:22px;background:#FFFFFF;border:2px solid #525455;color:#383E42;cursor:pointer;min-width:0;}
.nj-root .nj-option.is-selected{border:3px solid #383E42;padding:21px;}
.nj-root .nj-option.is-selected .nj-option-state{border-left:4px solid #F05F24;padding-left:10px;}
.nj-root .nj-option:hover:not(.is-unavailable){border-color:#383E42;}
.nj-root .nj-option-title{display:block;font:600 23px/1.3 'Josefin Sans',sans-serif;margin:0;}
.nj-root .nj-option-detail{display:block;font:400 16px/1.5 Saira,sans-serif;margin-top:12px;}
.nj-root .nj-option-state{display:block;font:600 18px/1.4 'Josefin Sans',sans-serif;margin-top:18px;}
.nj-root .nj-option-copy{min-width:0;overflow-wrap:break-word;}
.nj-root .nj-option.is-unavailable{background:#D4CFC9;border-style:dashed;color:#525455;cursor:not-allowed;opacity:1;}
.nj-root input[type="radio"]{appearance:none!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;max-width:24px;max-height:24px;flex:0 0 24px;border:2px solid #383E42;border-radius:50%;background:#FFFFFF;color:#383E42;margin:3px 0 0;position:relative;opacity:1;cursor:inherit;}
.nj-root input[type="radio"]:checked::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#383E42;}
.nj-root input[type="radio"]:disabled{border-color:#525455;background:#D4CFC9;}
.nj-root .nj-cohort{margin:32px 0 40px;padding:24px 0;border-block:1px solid #525455;}
.nj-root select{appearance:auto;display:block;width:100%;min-width:0;min-height:56px;padding:14px 16px;margin:18px 0;background:#FFFFFF;border:2px solid #525455;border-radius:0;color:#383E42;font:400 18px/1.5 Saira,sans-serif;}
.nj-root select:hover{border-color:#383E42;}
.nj-root .nj-included{background:#FFFFFF;border-left:4px solid #F05F24;padding:20px;}
.nj-root .nj-date-groups h3{font-size:25px;margin:8px 0;}
.nj-root .nj-slot-time{margin:0 0 20px;color:#525455;}
.nj-root .nj-date-groups .nj-option{margin-bottom:16px;}
.nj-root .nj-no-session{border:2px dashed #525455;padding:22px;color:#525455;}
.nj-root .nj-checkout-summary{border-top:2px solid #383E42;padding-top:28px;}
.nj-root button.brand-button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:16px 28px;background:#383E42!important;color:#FFFFFF!important;border:2px solid #383E42!important;border-radius:0;box-shadow:none;font:600 22px/1.3 'Josefin Sans',sans-serif;text-decoration:none;cursor:pointer;opacity:1;}
.nj-root button.brand-button:hover:not(:disabled){background:#525455!important;border-color:#525455!important;text-decoration:underline;text-underline-offset:5px;}
.nj-root button.brand-button:disabled{background:#D4CFC9!important;color:#525455!important;border:2px dashed #525455!important;opacity:1;cursor:not-allowed;}
.nj-root [role="status"]{color:#383E42;}
.nj-root :focus-visible{outline:3px solid #383E42!important;outline-offset:4px!important;}
.nj-root .nj-requalification :focus-visible{outline-color:#FFFFFF!important;}
.nj-root :is(a,button,input,select){scroll-margin-block:120px 32px;}
/* Shared chrome: same exact palette on this page, with no inherited glass effects. */
body[data-page="new-jersey"] .site-header{--nav-fg:#383E42;background:#D4CFC9;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-bottom:1px solid #525455;}
body[data-page="new-jersey"] :is(.site-header,.nav-panel,.nav-drawer) :is(a,button):hover{color:#383E42;opacity:1;text-decoration:underline;text-underline-offset:4px;}
body[data-page="new-jersey"] :is(.site-header,.nav-panel,.nav-drawer) :focus-visible{outline:3px solid #383E42!important;outline-offset:3px!important;}
body[data-page="new-jersey"] :is(.nav-panel,.nav-drawer){background:#D4CFC9;color:#383E42;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;animation:none;}
body[data-page="new-jersey"] :is(.nav-panel,.nav-drawer) :is(p,a,button,.nav-eyebrow,.nav-link,.nav-tagline){color:#383E42;opacity:1;}
body[data-page="new-jersey"] :is(.nav-col,.nav-link.is-pending){opacity:1!important;}
body[data-page="new-jersey"] .nav-scrim{background:#383E42;backdrop-filter:none;-webkit-backdrop-filter:none;}
body[data-page="new-jersey"] :is(.nav-burger,.nav-drawer-toggle,.nav-drawer-phone,.nav-drawer-contact){color:#383E42;background:#D4CFC9;border-color:#525455;}
body[data-page="new-jersey"] .nav-drawer-cta{background:#383E42;color:#FFFFFF!important;}
body[data-page="new-jersey"] .nav-drawer-cta:focus-visible{outline-color:#383E42!important;}
body[data-page="new-jersey"] .nav-phone svg{color:#383E42;}
@media(max-width:800px){
 body[data-page="new-jersey"] main.nj-root{padding:108px 24px 56px!important;}
 .nj-root h1{font-size:44px;letter-spacing:-1px;}.nj-root h2{font-size:32px;}
 body[data-page="new-jersey"] main.nj-root>.nj-hero{padding:28px 24px;}
 .nj-root blockquote{font-size:26px;padding-left:18px;}
 .nj-choices{grid-template-columns:1fr;}
 .nj-stages article{grid-template-columns:1fr;padding:24px;}
 .nj-stages article .eyebrow,.nj-stages article h3,.nj-stages article p:not(.eyebrow){grid-column:1;grid-row:auto;}
 .nj-stages article h3{margin-bottom:20px;}
 .nj-price-summary{grid-template-columns:1fr;gap:24px;padding:28px 24px;}
 .nj-value{border-left:0;border-top:1px solid #FFFFFF;padding:24px 0 0;}
 .nj-root .nj-value-price{font-size:64px;}
 .nj-root .nj-requalification{padding:28px 24px;}.nj-root .nj-requalification h2{font-size:44px;}
 .nj-root .nj-state-rule{padding:28px 24px;}
}
@media(max-width:600px){
 .nj-option-grid{grid-template-columns:1fr;}.nj-choices article{padding:24px;}
 .nj-root>section{margin-block:48px;}.nj-root .nj-requalification{margin-bottom:0;}.nj-root .nj-state-rule{margin-top:0;}
 .nj-root .nj-option{padding:18px;gap:12px;}.nj-root .nj-option.is-selected{padding:17px;}
 .nj-root .nj-option-title{font-size:22px;}.nj-root button.brand-button{width:100%;}
}
@media(forced-colors:active){.nj-root input[type=radio]{appearance:auto!important;}.nj-root input[type=radio]::after{display:none;}}

.nj-root :is(p,li,a,small,.nj-option-detail){font-weight:400;}
body[data-page="new-jersey"] :is(.nj-root,.site-header,.nav-panel,.nav-drawer),body[data-page="new-jersey"] :is(.nj-root,.site-header,.nav-panel,.nav-drawer) *{transition:none;animation:none;}
/* Use the existing real-text footer at every NJ width so its text and controls
   can use approved colors and readable type rather than scaled artwork text. */
body[data-page="new-jersey"] .site-footer.transaction-footer{width:100%!important;height:auto!important;zoom:1!important;overflow:visible;background:#383E42;color:#FFFFFF;}
body[data-page="new-jersey"] .site-footer :is(.transaction-footer-art,.footer-hotspots){display:none!important;}
body[data-page="new-jersey"] .site-footer .footer-native{display:block!important;max-width:1184px;}
body[data-page="new-jersey"] .site-footer>.footer-social{display:flex;max-width:1120px;margin:0 auto;padding:0 24px 24px;}
body[data-page="new-jersey"] .site-footer :is(a,button,p,label,span,input){color:#FFFFFF!important;opacity:1!important;}
body[data-page="new-jersey"] .site-footer :is(h2,h3){font-family:'Josefin Sans',sans-serif;font-weight:600;color:#FFFFFF;}
body[data-page="new-jersey"] .site-footer .footer-intro h2 span{color:#F05F24!important;}
body[data-page="new-jersey"] .site-footer a:hover{text-decoration:underline!important;text-underline-offset:4px;}
body[data-page="new-jersey"] .site-footer .brand-button{background:#383E42;border:2px solid #FFFFFF;box-shadow:none;border-radius:0;font-family:'Josefin Sans',sans-serif;font-weight:600;}
body[data-page="new-jersey"] .site-footer .brand-button:hover{background:#525455;}
body[data-page="new-jersey"] .site-footer .newsletter{position:static;width:100%;margin:16px 0;}
body[data-page="new-jersey"] .site-footer .newsletter input{background:#383E42;border:1px solid #FFFFFF;min-width:0;width:100%;padding:12px;font:400 16px/1.5 Saira,sans-serif;}
body[data-page="new-jersey"] .site-footer .newsletter input::placeholder{color:#FFFFFF;opacity:1;}
body[data-page="new-jersey"] .site-footer .newsletter button{background:#383E42;border:1px solid #FFFFFF;min-width:44px;min-height:44px;color:#FFFFFF;box-shadow:none;}
body[data-page="new-jersey"] .site-footer :focus-visible{outline:3px solid #FFFFFF!important;outline-offset:4px!important;}

.nj-root .nj-cohort-confirmed{display:block;margin-bottom:12px;font:600 22px/1.35 "Josefin Sans",sans-serif;}
body[data-page="new-jersey"] .nav-scrim{transition:none;}
body[data-page="new-jersey"] :is(.nav-panel,.nav-cols .nav-col,.nav-eyebrow,.nav-drawer-toggle){border-color:#525455;}
body[data-page="new-jersey"] :is(.site-header,.nav-panel,.nav-drawer) :is(a,button,p){font-weight:400;}
html:has(body[data-page="new-jersey"]){scroll-behavior:auto;}
body[data-page="new-jersey"] .nav-feature{background:#FFFFFF;border-color:#525455;}
body[data-page="new-jersey"] .site-footer .newsletter{display:flex;align-items:stretch;gap:0;}
body[data-page="new-jersey"] .site-footer .newsletter input{flex:1;width:0;}

/* Keep the existing women-focused card clear of the fixed navigation. */
#womens-foundation{scroll-margin-top:calc(var(--nav-h,88px) + 24px)}
@media(min-width:1200px) and (max-width:1919.98px){#womens-foundation{scroll-margin-top:180px}}

/* v11 navigation refinements: quiet interactions and correct contrast on tan pages. */
.nav-trigger::after{display:none!important}
.site-header.is-stuck,.site-header.has-panel{box-shadow:none;border:0}
body[data-page="calendar"] .site-header:not(.is-stuck):not(.has-panel){--nav-fg:#383e42;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border:0}
body[data-page="calendar"] .site-header:not(.is-stuck):not(.has-panel) .nav-logo img{content:url('./assets/checkout/group-4.png')}


/* v13: mobile footer controls use the visible native links only. */
@media(max-width:1199.98px){
  .footer-hotspots{display:none!important;pointer-events:none!important}
  .footer-newsletter button,.newsletter button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
}


/* v13.2: restore the native Training Hub footer below the desktop breakpoint. */
@media(max-width:1199.98px){
  body[data-page=courses] .hub-interactive-footer.site-footer{
    position:relative!important;width:100%!important;height:auto!important;
    zoom:1!important;overflow:visible!important;max-width:none!important}
  body[data-page=courses] .hub-interactive-footer .footer-native{display:block!important}
  body[data-page=courses] .hub-interactive-footer .transaction-footer-art{display:none!important}
  body[data-page=courses] .hub-interactive-footer .footer-hotspots{display:none!important;pointer-events:none!important}
  body[data-page=courses] .hub-interactive-footer .desktop-newsletter{display:none!important}
}
