*,: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.17 | 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:Geist,system-ui,sans-serif;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}.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}.pointer-events-none{pointer-events:none}.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-4{left:1rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-28{top:7rem}.top-4{top:1rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-3{grid-row:span 3/span 3}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mb-2{margin-bottom:-.5rem}.-mt-0\.5{margin-top:-.125rem}.mb-0\.5{margin-bottom:.125rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-\[3px\]{margin-top:3px}.mt-\[5px\]{margin-top:5px}.mt-auto{margin-top:auto}.mt-px{margin-top:1px}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[4\/5\]{aspect-ratio:4/5}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-24{height:6rem}.h-9{height:2.25rem}.h-\[44px\]{height:44px}.h-\[48px\]{height:48px}.h-\[52px\]{height:52px}.h-\[56px\]{height:56px}.h-\[64px\]{height:64px}.h-\[72px\]{height:72px}.h-auto{height:auto}.h-full{height:100%}.max-h-\[calc\(100dvh-72px\)\]{max-height:calc(100dvh - 72px)}.min-h-\[104px\]{min-height:104px}.min-h-\[120px\]{min-height:120px}.min-h-\[40px\]{min-height:40px}.min-h-\[44px\]{min-height:44px}.min-h-\[48px\]{min-height:48px}.min-h-\[52px\]{min-height:52px}.min-h-\[64px\]{min-height:64px}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-24{width:6rem}.w-9{width:2.25rem}.w-\[48px\]{width:48px}.w-\[62\%\]{width:62%}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-7xl{max-width:80rem}.max-w-\[14ch\]{max-width:14ch}.max-w-\[15ch\]{max-width:15ch}.max-w-\[16ch\]{max-width:16ch}.max-w-\[17ch\]{max-width:17ch}.max-w-\[18ch\]{max-width:18ch}.max-w-\[20ch\]{max-width:20ch}.max-w-\[300px\]{max-width:300px}.max-w-\[36ch\]{max-width:36ch}.max-w-\[40ch\]{max-width:40ch}.max-w-\[42ch\]{max-width:42ch}.max-w-\[44ch\]{max-width:44ch}.max-w-\[46ch\]{max-width:46ch}.max-w-\[48ch\]{max-width:48ch}.max-w-\[52ch\]{max-width:52ch}.max-w-\[54ch\]{max-width:54ch}.max-w-\[56ch\]{max-width:56ch}.max-w-\[58ch\]{max-width:58ch}.max-w-\[60ch\]{max-width:60ch}.max-w-\[62ch\]{max-width:62ch}.max-w-\[64ch\]{max-width:64ch}.max-w-\[68ch\]{max-width:68ch}.max-w-\[70ch\]{max-width:70ch}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.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-y{resize:vertical}.scroll-mt-24{scroll-margin-top:6rem}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-\[18px_1fr\]{grid-template-columns:18px 1fr}.grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.grid-cols-\[20px_1fr\]{grid-template-columns:20px 1fr}.grid-cols-\[24px_1fr\]{grid-template-columns:24px 1fr}.grid-cols-\[28px_1fr\]{grid-template-columns:28px 1fr}.grid-cols-\[48px_1fr\]{grid-template-columns:48px 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-12{row-gap:3rem}.gap-y-2{row-gap:.5rem}.gap-y-5{row-gap:1.25rem}.gap-y-8{row-gap:2rem}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-steel-light{--tw-border-opacity:1;border-color:rgb(var(--c-steel-light)/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-brand-deep{--tw-bg-opacity:1;background-color:rgb(var(--c-brand-deep)/var(--tw-bg-opacity,1))}.bg-ink{--tw-bg-opacity:1;background-color:rgb(var(--c-ink)/var(--tw-bg-opacity,1))}.bg-paper{--tw-bg-opacity:1;background-color:rgb(var(--c-paper)/var(--tw-bg-opacity,1))}.bg-paper\/90{background-color:rgb(var(--c-paper)/.9)}.bg-safety{--tw-bg-opacity:1;background-color:rgb(var(--c-safety)/var(--tw-bg-opacity,1))}.bg-steel{--tw-bg-opacity:1;background-color:rgb(var(--c-steel)/var(--tw-bg-opacity,1))}.bg-white\/\[0\.05\]{background-color:hsla(0,0%,100%,.05)}.bg-white\/\[0\.06\]{background-color:hsla(0,0%,100%,.06)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.pl-3{padding-left:.75rem}.pr-11{padding-right:2.75rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-call{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.font-sans{font-family:Geist,system-ui,sans-serif}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[30px\]{font-size:30px}.text-\[34px\]{font-size:34px}.text-\[40px\]{font-size:40px}.text-\[48px\]{font-size:48px}.text-\[56px\]{font-size:56px}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.not-italic{font-style:normal}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[1\.04\]{line-height:1.04}.leading-\[1\.08\]{line-height:1.08}.leading-\[1\.1\]{line-height:1.1}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.025em\]{letter-spacing:-.025em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-tight{letter-spacing:-.025em}.text-\[\#F5A524\]{--tw-text-opacity:1;color:rgb(245 165 36/var(--tw-text-opacity,1))}.text-alert{--tw-text-opacity:1;color:rgb(var(--c-alert)/var(--tw-text-opacity,1))}.text-bone{--tw-text-opacity:1;color:rgb(var(--c-bone)/var(--tw-text-opacity,1))}.text-bone-dim{--tw-text-opacity:1;color:rgb(var(--c-bone-dim)/var(--tw-text-opacity,1))}.text-brand{--tw-text-opacity:1;color:rgb(var(--c-brand)/var(--tw-text-opacity,1))}.text-brand-bright{--tw-text-opacity:1;color:rgb(var(--c-brand-bright)/var(--tw-text-opacity,1))}.text-cyan{--tw-text-opacity:1;color:rgb(var(--c-cyan)/var(--tw-text-opacity,1))}.text-on-safety{--tw-text-opacity:1;color:rgb(var(--c-on-safety)/var(--tw-text-opacity,1))}.text-slate{--tw-text-opacity:1;color:rgb(var(--c-slate)/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/50{color:hsla(0,0%,100%,.5)}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/65{color:hsla(0,0%,100%,.65)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/75{color:hsla(0,0%,100%,.75)}.text-white\/80{color:hsla(0,0%,100%,.8)}.underline{text-decoration-line:underline}.decoration-steel-light{text-decoration-color:rgb(var(--c-steel-light)/1)}.decoration-white\/40{text-decoration-color:hsla(0,0%,100%,.4)}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.shadow-\[0_24px_40px_-24px_rgb\(10_17_40\/0\.35\)\]{--tw-shadow:0 24px 40px -24px rgb(10 17 40/0.35);--tw-shadow-colored:0 24px 40px -24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[1px_0_0_rgb\(var\(--c-steel-light\)\)\2c 0_1px_0_rgb\(var\(--c-steel-light\)\)\]{--tw-shadow:1px 0 0 rgb(var(--c-steel-light)),0 1px 0 rgb(var(--c-steel-light));--tw-shadow-colored:1px 0 0 var(--tw-shadow-color),0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--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(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-white\/10{--tw-ring-color:hsla(0,0%,100%,.1)}.blur{--tw-blur:blur(8px);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-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-saturate-150{-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-saturate-150{--tw-backdrop-saturate:saturate(1.5)}.placeholder\:text-slate::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--c-slate)/var(--tw-text-opacity,1))}.placeholder\:text-slate::placeholder{--tw-text-opacity:1;color:rgb(var(--c-slate)/var(--tw-text-opacity,1))}@media (hover:hover) and (pointer:fine){.hover\:text-bone:hover{--tw-text-opacity:1;color:rgb(var(--c-bone)/var(--tw-text-opacity,1))}.hover\:text-brand-bright:hover{--tw-text-opacity:1;color:rgb(var(--c-brand-bright)/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-slate:hover{text-decoration-color:rgb(var(--c-slate)/1)}.hover\:decoration-white:hover{text-decoration-color:#fff}}.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.focus\:fixed:focus{position:fixed}.focus\:left-3:focus{left:.75rem}.focus\:top-3:focus{top:.75rem}.focus\:z-\[100\]:focus{z-index:100}.focus\:rounded-xl:focus{border-radius:.75rem}.focus\:bg-safety:focus{--tw-bg-opacity:1;background-color:rgb(var(--c-safety)/var(--tw-bg-opacity,1))}.focus\:px-4:focus{padding-left:1rem;padding-right:1rem}.focus\:py-3:focus{padding-top:.75rem;padding-bottom:.75rem}.focus\:font-semibold:focus{font-weight:600}.focus\:text-on-safety:focus{--tw-text-opacity:1;color:rgb(var(--c-on-safety)/var(--tw-text-opacity,1))}@media (hover:hover) and (pointer:fine){.group\/row:hover .group-hover\/row\:text-cyan{--tw-text-opacity:1;color:rgb(var(--c-cyan)/var(--tw-text-opacity,1))}}@media (min-width:640px){.sm\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-5{gap:1.25rem}.sm\:gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:text-\[22px\]{font-size:22px}}@media (min-width:768px){.md\:not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.md\:sticky{position:sticky}.md\:top-28{top:7rem}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-start-3{grid-column-start:3}.md\:mb-12{margin-bottom:3rem}.md\:mb-14{margin-bottom:3.5rem}.md\:hidden{display:none}.md\:aspect-\[4\/5\]{aspect-ratio:4/5}.md\:h-10{height:2.5rem}.md\:h-28{height:7rem}.md\:h-\[52px\]{height:52px}.md\:h-\[68px\]{height:68px}.md\:h-\[76px\]{height:76px}.md\:w-28{width:7rem}.md\:w-\[52px\]{width:52px}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[0\.85fr_1\.15fr\]{grid-template-columns:.85fr 1.15fr}.md\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.md\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.md\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.md\:grid-cols-\[1\.1fr_0\.9fr\]{grid-template-columns:1.1fr .9fr}.md\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}.md\:grid-cols-\[120px_1fr_1\.4fr\]{grid-template-columns:120px 1fr 1.4fr}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-16{gap:4rem}.md\:gap-4{gap:1rem}.md\:gap-5{gap:1.25rem}.md\:gap-6{gap:1.5rem}.md\:gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.md\:gap-x-14{-moz-column-gap:3.5rem;column-gap:3.5rem}.md\:gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.md\:gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.md\:justify-self-end{justify-self:end}.md\:border-t-0{border-top-width:0}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}.md\:p-9{padding:2.25rem}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-24{padding-top:6rem;padding-bottom:6rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:pb-14{padding-bottom:3.5rem}.md\:pb-20{padding-bottom:5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-28{padding-bottom:7rem}.md\:pb-32{padding-bottom:8rem}.md\:pt-14{padding-top:3.5rem}.md\:pt-16{padding-top:4rem}.md\:pt-20{padding-top:5rem}.md\:pt-24{padding-top:6rem}.md\:pt-28{padding-top:7rem}.md\:text-left{text-align:left}.md\:text-\[18px\]{font-size:18px}.md\:text-\[21px\]{font-size:21px}.md\:text-\[22px\]{font-size:22px}.md\:text-\[24px\]{font-size:24px}.md\:text-\[26px\]{font-size:26px}.md\:text-\[28px\]{font-size:28px}.md\:text-\[30px\]{font-size:30px}.md\:text-\[32px\]{font-size:32px}.md\:text-\[34px\]{font-size:34px}.md\:text-\[40px\]{font-size:40px}.md\:text-\[46px\]{font-size:46px}.md\:text-\[52px\]{font-size:52px}.md\:text-\[56px\]{font-size:56px}.md\:text-\[64px\]{font-size:64px}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-28{top:7rem}.lg\:col-span-1{grid-column:span 1/span 1}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:max-w-none{max-width:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1\.1fr_0\.9fr\]{grid-template-columns:1.1fr .9fr}.lg\:grid-cols-\[1\.6fr_1fr_1fr_1fr_1\.1fr\]{grid-template-columns:1.6fr 1fr 1fr 1fr 1.1fr}.lg\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_300px\]{grid-template-columns:minmax(0,1fr) 300px}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_340px\]{grid-template-columns:minmax(0,1fr) 340px}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_360px\]{grid-template-columns:minmax(0,1fr) 360px}.lg\:gap-12{gap:3rem}.lg\:gap-16{gap:4rem}.lg\:gap-20{gap:5rem}.lg\:border-b-0{border-bottom-width:0}.lg\:border-l{border-left-width:1px}.lg\:border-t-0{border-top-width:0}.lg\:px-7{padding-left:1.75rem;padding-right:1.75rem}.lg\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}.lg\:pl-12{padding-left:3rem}.lg\:text-\[60px\]{font-size:60px}.lg\:first\:border-l-0:first-child{border-left-width:0}.lg\:first\:pl-0:first-child{padding-left:0}}@media (min-width:768px){.md\:\[\&\>li\:nth-child\(-n\+2\)\]\:border-t>li:nth-child(-n+2),.md\:\[\&\>li\:nth-child\(-n\+3\)\]\:border-t>li:nth-child(-n+3){border-top-width:1px}}.\[\&\>li\]\:border-steel-light>li{--tw-border-opacity:1;border-color:rgb(var(--c-steel-light)/var(--tw-border-opacity,1))}.\[\&_\.arrow\]\:text-bone-dim .arrow{--tw-text-opacity:1;color:rgb(var(--c-bone-dim)/var(--tw-text-opacity,1))}.\[\&_a\]\:text-brand-bright a{--tw-text-opacity:1;color:rgb(var(--c-brand-bright)/var(--tw-text-opacity,1))}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-2 a{text-underline-offset:2px}
/* Lock Raven - site.css
   Semantic color tokens consumed by tailwind.config.cjs (rgb(var(--c-x) / <alpha-value>)),
   plus the motion system and every interaction state. Loaded after assets/tailwind.css.

   Theme: light, drawn from the logo. Navy (#0A1128) is the wordmark; the raven's
   cyan-to-blue is the only accent. Blue carries every call and submit action, icons, and links.
   Token names are roles, not colors: ink = page, paper = raised surface, bone = main text. */

 /* Self-hosted fonts: no third-party request, no render-blocking stylesheet.
   Geist is one variable file covering 400-700; Inter 800 is only for call buttons. */
@font-face { font-family: "Geist"; src: url("fonts/geist-variable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Inter"; src: url("fonts/inter-800-latin.woff2") format("woff2"); font-weight: 800; font-style: normal; font-display: swap; }

:root {
  --c-ink: 247 249 252;          /* page background #F7F9FC, cool off-white */
  --c-paper: 255 255 255;        /* cards, form, header */
  --c-steel: 238 242 248;        /* alternate section band #EEF2F8 */
  --c-steel-light: 219 226 236;  /* hairlines #DBE2EC */
  --c-bone: 10 17 40;            /* primary text: logo navy #0A1128, 18:1 on page */
  --c-bone-dim: 69 80 106;       /* secondary text #45506A, 8:1 */
  --c-slate: 99 110 133;         /* tertiary text #636E85, 4.8:1 on the section band */
  --c-brand: 24 150 238;         /* raven blue #1896EE: icons, decoration */
  --c-brand-bright: 10 100 200;  /* link blue #0A64C8: 5.8:1 on white, 5.1:1 on the band */
  --c-brand-deep: 10 17 40;      /* navy panels and top bar */
  --c-cyan: 30 184 245;          /* raven cyan #1EB8F5, only on navy */
  --c-safety: 10 100 200;        /* call + submit fill #0A64C8 (white text 5.8:1) */
  --c-on-safety: 255 255 255;
  --c-alert: 200 40 48;

  /* Motion. One curve, three durations. Only transform and opacity ever animate;
     color, border, and shadow changes either snap or ride on an opacity overlay. */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-press: 140ms;   /* :active feedback, and every exit */
  --dur-ui: 200ms;      /* hover, open, reveal of a state change */

  color-scheme: light;
  scrollbar-color: rgb(var(--c-steel-light)) rgb(var(--c-ink));
}

html { scroll-behavior: smooth; -webkit-tap-highlight-color: transparent; }

body {
  background-color: rgb(var(--c-ink));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "ss01", "cv11";
}

[hidden] { display: none !important; }

/* Browser surfaces carry the palette too */
::selection { background: rgb(var(--c-brand) / 0.22); color: rgb(var(--c-bone)); }
input, textarea, select { caret-color: rgb(var(--c-brand-bright)); }
.icon { display: inline-block; flex-shrink: 0; vertical-align: middle; }

/* Sticky header offset for in-page anchors */
[id] { scroll-margin-top: 96px; }

/* Mobile sticky call bar: reserve space so it never covers the last content or the footer */
@media (max-width: 767px) {
  body { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
}

/* ---------- Focus ---------- */
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 2px solid rgb(var(--c-brand-bright));
  outline-offset: 3px;
  border-radius: 8px;
}

/* ---------- Tactile press: every interactive element answers a tap ----------
   Inline text links can't transform, so the rule is a no-op for them; everything
   block or inline-flex (buttons, nav, cards, rows, summaries) scales to 0.98. */
a, summary, button { transition: transform var(--dur-press) var(--ease-out); touch-action: manipulation; }
a:active, summary:active, button:active { transform: scale(0.98); }

/* ---------- Buttons ----------
   Hover brightening is a white/navy overlay fading in, not a filter or color transition. */
.btn { position: relative; isolation: isolate; }
.btn::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: -1;
  opacity: 0; pointer-events: none;
  transition: opacity var(--dur-press) var(--ease-out);
}
.btn-call {
  background-image: linear-gradient(180deg, rgb(24 124 222), rgb(8 86 186));
  box-shadow: 0 1px 0 rgb(255 255 255 / 0.25) inset, 0 1px 2px rgb(10 17 40 / 0.12), 0 8px 20px -10px rgb(10 17 40 / 0.45);
}
.btn-call::after { z-index: 0; background: rgb(255 255 255 / 0.12); }
.btn-call > * { position: relative; z-index: 1; }
.btn-ghost::after { background: rgb(var(--c-paper)); box-shadow: inset 0 0 0 1px rgb(var(--c-bone) / 0.28); }

/* Arrows nudge toward where the link goes */
.arrow { transition: transform var(--dur-ui) var(--ease-out); }

@media (hover: hover) and (pointer: fine) {
  .btn:hover::after { opacity: 1; transition-duration: var(--dur-ui); }
  .btn-ghost:hover .arrow,
  .link-arrow:hover .arrow,
  .panel-row:hover .arrow,
  .card:hover .link-arrow .arrow { transform: translateX(3px); }
  .panel-row:hover .arrow { color: rgb(var(--c-cyan)); }
}

/* ---------- Primary nav: underline scales in from the left (marks hover and current page) ---------- */
.nav-link::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: 8px; height: 1px;
  background: currentColor;
  transform: scaleX(0); transform-origin: left;
  transition: transform var(--dur-press) var(--ease-out);
}
.nav-link[aria-current="page"]::after { transform: scaleX(1); background: rgb(var(--c-brand-bright)); }
@media (hover: hover) and (pointer: fine) { .nav-link:hover::after { transform: scaleX(1); transition-duration: var(--dur-ui); } }

/* ---------- Cards: lift 2px on hover; the blue edge and shadow are one overlay fading in ---------- */
.card { position: relative; transition: transform var(--dur-ui) var(--ease-out); }
.card::after {
  content: ""; position: absolute; inset: -1px; border-radius: inherit; pointer-events: none;
  box-shadow: inset 0 0 0 1px rgb(var(--c-brand) / 0.55), 0 18px 40px -20px rgb(10 17 40 / 0.25);
  opacity: 0; transition: opacity var(--dur-ui) var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .card:hover { transform: translateY(-2px); }
  .card:hover::after { opacity: 1; }
}
.card:active { transform: scale(0.98); transition-duration: var(--dur-press); }

/* ---------- Mobile menu: fades and drops 8px; exit is faster than entry ---------- */
.mnav {
  visibility: hidden; opacity: 0; transform: translateY(-8px);
  transition: opacity var(--dur-press) var(--ease-out), transform var(--dur-press) var(--ease-out), visibility 0s linear var(--dur-press);
}
.mnav[data-open="true"] {
  visibility: visible; opacity: 1; transform: none;
  transition: opacity var(--dur-ui) var(--ease-out), transform var(--dur-ui) var(--ease-out), visibility 0s;
}
/* Hamburger and close icons cross-fade with a quarter turn, so the swap reads as one state change */
#mobile-toggle .icon { position: absolute; transition: opacity var(--dur-press) var(--ease-out), transform var(--dur-ui) var(--ease-out); }
#mobile-toggle .toggle-close { opacity: 0; transform: scale(0.7) rotate(-45deg); }
#mobile-toggle[aria-expanded="true"] .toggle-open { opacity: 0; transform: scale(0.7) rotate(45deg); }
#mobile-toggle[aria-expanded="true"] .toggle-close { opacity: 1; transform: none; }

/* ---------- Accordion (native <details>, works without JS) ----------
   Height is never animated. The answer fades up 4px; the plus turns into an x. */
details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display: none; }
@media (hover: hover) and (pointer: fine) { .acc summary:hover h3 { color: rgb(var(--c-brand-bright)); } }
.acc-icon { transition: transform var(--dur-ui) var(--ease-out); }
details[open] > summary .acc-icon { transform: rotate(45deg); }
.acc[open] .acc-body { animation: lr-fade-up var(--dur-ui) var(--ease-out); }
@keyframes lr-fade-up { from { opacity: 0; transform: translateY(-4px); } }

/* ---------- Form fields: focus ring and borders snap (no color transitions) ---------- */
@media (hover: hover) and (pointer: fine) { .field:hover { border-color: rgb(var(--c-bone) / 0.3); } }
.field:focus { outline: none; border-color: rgb(var(--c-brand-bright)); background-color: rgb(var(--c-paper)); box-shadow: 0 0 0 4px rgb(var(--c-brand) / 0.16); }
.field[aria-invalid="true"] { border-color: rgb(var(--c-alert)); }
.field[aria-invalid="true"]:focus { box-shadow: 0 0 0 3px rgb(var(--c-alert) / 0.22); }

button[aria-busy="true"] { cursor: progress; opacity: 0.85; }
button[aria-busy="true"] [data-btn-label] { animation: lr-pulse 900ms var(--ease-out) infinite alternate; }
@keyframes lr-pulse { to { opacity: 0.5; } }
[data-form-status] { transition: opacity var(--dur-ui) var(--ease-out), transform var(--dur-ui) var(--ease-out); }
[data-form-status]:empty { opacity: 0; transform: translateY(4px); }

/* ---------- Legal prose ---------- */
.prose-legal h2 { font-size: 22px; font-weight: 600; letter-spacing: -0.01em; color: rgb(var(--c-bone)); margin: 2.75rem 0 0.75rem; }
.prose-legal h2:first-of-type { margin-top: 1.5rem; }
.prose-legal p { font-size: 16px; line-height: 1.7; color: rgb(var(--c-bone-dim)); margin-bottom: 0.9rem; }
.prose-legal .meta { font-size: 13px; color: rgb(var(--c-slate)); font-variant-numeric: tabular-nums; }
.prose-legal a { color: rgb(var(--c-brand-bright)); text-decoration: underline; text-decoration-color: rgb(var(--c-brand) / 0.4); text-underline-offset: 3px; }
.prose-legal a:hover { text-decoration-color: currentColor; }

/* ---------- Guide articles ---------- */
.prose-article h2 { font-size: 24px; line-height: 1.25; font-weight: 600; letter-spacing: -0.02em; color: rgb(var(--c-bone)); margin: 3rem 0 1rem; text-wrap: balance; }
.prose-article p { font-size: 17px; line-height: 1.75; color: rgb(var(--c-bone-dim)); margin-bottom: 1.1rem; text-wrap: pretty; }
.prose-article ul { margin: 0 0 1.25rem; display: flex; flex-direction: column; gap: 0.75rem; }
.prose-article li { position: relative; padding-left: 1.4rem; font-size: 17px; line-height: 1.7; color: rgb(var(--c-bone-dim)); }
.prose-article li::before { content: ""; position: absolute; left: 0.2rem; top: 0.72em; width: 6px; height: 6px; border-radius: 2px; background: rgb(var(--c-brand)); }
.prose-article strong { color: rgb(var(--c-bone)); font-weight: 600; }
.prose-article a { color: rgb(var(--c-brand-bright)); text-decoration: underline; text-decoration-color: rgb(var(--c-brand) / 0.4); text-underline-offset: 3px; }
.prose-article a:hover { text-decoration-color: currentColor; }

/* ---------- Brand panel: the navy block that stands in for photography on the home and area pages.
   The dot grid echoes the circuit dots in the raven mark; the glow sits behind the mark only. */
.brand-panel {
  background-color: rgb(var(--c-brand-deep));
  background-image:
    radial-gradient(60% 55% at 70% 30%, rgb(var(--c-brand) / 0.28), transparent 70%),
    radial-gradient(rgb(255 255 255 / 0.07) 1px, transparent 1.2px);
  background-size: 100% 100%, 22px 22px;
  box-shadow: 0 1px 2px rgb(10 17 40 / 0.1), 0 30px 60px -30px rgb(10 17 40 / 0.55);
}
.brand-panel.band { box-shadow: none; }
.brand-panel .raven { filter: none; }

/* Icon tile used on service cards */
.icon-tile {
  background: linear-gradient(180deg, rgb(var(--c-brand) / 0.12), rgb(var(--c-brand) / 0.04));
  box-shadow: inset 0 0 0 1px rgb(var(--c-brand) / 0.18);
}


/* ---------- Mega menus (desktop): fade and drop 8px; exit faster than entry ---------- */
.site-header { transition: transform var(--dur-ui) var(--ease-out); }
.hdr-row > * { transition: transform var(--dur-ui) var(--ease-out); }
.hdr-logo { transform-origin: left center; }
/* Compact on scroll: the bar slides up 8px and the logo scales down; transforms only */
.site-header[data-compact="true"] { transform: translateY(-8px); }
.site-header[data-compact="true"] .hdr-row > * { transform: translateY(4px); }
.site-header[data-compact="true"] .hdr-logo { transform: translateY(4px) scale(0.88); }
.site-header[data-compact="true"] .mega,
.site-header[data-compact="true"] .mnav { margin-top: 0; }

.nav-trigger .caret { transition: transform var(--dur-ui) var(--ease-out); }
.nav-trigger[aria-expanded="true"] .caret { transform: rotate(180deg); }
.nav-trigger[aria-expanded="true"], .nav-trigger[data-current] { color: rgb(var(--c-bone)); }
.nav-trigger[data-current]::after { transform: scaleX(1); background: rgb(var(--c-brand-bright)); }
.mega {
  visibility: hidden; opacity: 0; transform: translateY(-8px);
  box-shadow: 0 24px 40px -28px rgb(10 17 40 / 0.4);
  transition: opacity var(--dur-press) var(--ease-out), transform var(--dur-press) var(--ease-out), visibility 0s linear var(--dur-press);
}
.mega[data-open="true"] {
  visibility: visible; opacity: 1; transform: none;
  transition: opacity var(--dur-ui) var(--ease-out), transform var(--dur-ui) var(--ease-out), visibility 0s;
}
.mega-link, .side-link { transition: transform var(--dur-press) var(--ease-out); }
@media (hover: hover) and (pointer: fine) {
  .mega-link:hover, .mega-head:hover { color: rgb(var(--c-brand-bright)); }
}
.macc > summary .acc-icon { transition: transform var(--dur-ui) var(--ease-out); }
.macc[open] > summary .acc-icon { transform: rotate(45deg); }
.macc[open] .acc-body { animation: lr-fade-up var(--dur-ui) var(--ease-out); }

/* ---------- Dark (navy) bands ---------- */
.on-dark nav a, .on-dark a { color: rgb(255 255 255 / 0.6); }
.on-dark [aria-current="page"] { color: #fff; }
.on-dark .icon { color: rgb(255 255 255 / 0.4); }
.btn-ghost-dark { border-color: rgb(255 255 255 / 0.2); color: #fff; background: transparent; }
.btn-ghost-dark::after { background: rgb(255 255 255 / 0.08); box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.35); }
.panel-tile { position: relative; transition: transform var(--dur-ui) var(--ease-out); }
.panel-tile::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; box-shadow: inset 0 0 0 1px rgb(var(--c-cyan) / 0.6); opacity: 0; transition: opacity var(--dur-ui) var(--ease-out); }
@media (hover: hover) and (pointer: fine) {
  .panel-tile:hover { transform: translateY(-2px); }
  .panel-tile:hover::after { opacity: 1; }
  .panel-tile:hover .arrow { transform: translateX(3px); }
}

/* ---------- Chips that link (towns, makes) ---------- */
.chip-link { position: relative; transition: transform var(--dur-press) var(--ease-out); }
.chip-link::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; pointer-events: none; box-shadow: inset 0 0 0 1px rgb(var(--c-brand) / 0.6); opacity: 0; transition: opacity var(--dur-press) var(--ease-out); }
@media (hover: hover) and (pointer: fine) { .chip-link:hover::after { opacity: 1; } .chip-link:hover { color: rgb(var(--c-brand-bright)); } }

/* ---------- Tables: hairline rows, scroll inside their own box on small screens ---------- */
.table-wrap { overflow-x: auto; border: 1px solid rgb(var(--c-steel-light)); border-radius: 16px; background: rgb(var(--c-paper)); }
.table-wrap table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 520px; }
.table-wrap caption { caption-side: top; text-align: left; padding: 16px 20px 12px; font-size: 13px; color: rgb(var(--c-slate)); }
.table-wrap th, .table-wrap td { text-align: left; vertical-align: top; padding: 14px 20px; border-top: 1px solid rgb(var(--c-steel-light)); line-height: 1.5; }
.table-wrap thead th { font-size: 13px; font-weight: 600; color: rgb(var(--c-bone-dim)); background: rgb(var(--c-ink)); }
.table-wrap tbody th { font-weight: 600; color: rgb(var(--c-bone)); position: sticky; left: 0; background: rgb(var(--c-paper)); }
.table-wrap td { color: rgb(var(--c-bone-dim)); }
.prose-article .table-wrap { margin: 1.5rem 0; }
.prose-article ol { margin: 0 0 1.25rem; padding-left: 1.4rem; list-style: decimal; display: flex; flex-direction: column; gap: 0.6rem; }
.prose-article ol li { padding-left: 0.2rem; }
.prose-article ol li::before { content: none; }

/* ---------- Maps ---------- */
.map-county { fill: rgb(var(--c-ink)); stroke: rgb(var(--c-steel-light)); stroke-width: 1.5; }
.map-county.is-active { fill: rgb(var(--c-brand) / 0.08); stroke: rgb(var(--c-brand) / 0.55); }
.map-county-label { font: 600 15px Geist, system-ui, sans-serif; fill: rgb(var(--c-slate)); letter-spacing: 0.02em; }
.map-dot { fill: rgb(var(--c-brand-bright)); stroke: #fff; stroke-width: 2; }
.map-hit { fill: transparent; }
.map-ring { fill: rgb(var(--c-brand) / 0.18); }
.map-town.is-current .map-dot { fill: rgb(var(--c-brand-deep)); }
.map-label { font: 600 13px Geist, system-ui, sans-serif; fill: rgb(var(--c-bone)); paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; pointer-events: none; }
.map-label-current { fill: rgb(var(--c-bone)); }
.map-shop-ring { fill: rgb(var(--c-brand) / 0.15); }
.map-shop-dot { fill: rgb(var(--c-brand-deep)); stroke: #fff; stroke-width: 2; }
.map-label-shop { fill: rgb(var(--c-brand-deep)); }
.map-town .map-dot { transform-box: fill-box; transform-origin: center; transition: transform var(--dur-press) var(--ease-out); }
.map-tip { opacity: 0; transition: opacity var(--dur-press) var(--ease-out); }
.map-town:hover .map-tip, .map-town:focus-visible .map-tip { opacity: 1; }
.map-town:hover .map-dot, .map-town:focus-visible .map-dot { transform: scale(1.35); }
.map-town:focus-visible { outline: none; }
.map-town:focus-visible .map-hit { stroke: rgb(var(--c-brand-bright)); stroke-width: 2; }
.map-facade .map-load { position: absolute; left: 16px; top: 16px; }
.map-facade iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 16px; }

/* ---------- Illustration slot ---------- */
.illus { color: rgb(var(--c-cyan) / 0.22); }


/* ---------- Reduced motion ----------
   Keep what explains state (opacity fades, the menu and accordion appearing);
   drop everything that moves: press scale, hover lift, arrow nudges, slides, spins, pulses. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  a:active, summary:active, button:active, .card:active, .card:hover { transform: none; }
  .arrow, .nav-link::after, .acc-icon, #mobile-toggle .icon { transition: none; }
  .btn-ghost:hover .arrow, .link-arrow:hover .arrow, .panel-row:hover .arrow, .card:hover .link-arrow .arrow { transform: none; }
  .mnav, .mnav[data-open="true"] { transform: none; }
  #mobile-toggle .toggle-close, #mobile-toggle[aria-expanded="true"] .toggle-open { transform: none; }
  .site-header, .hdr-row > *, .mega, .panel-tile, .chip-link, .map-town .map-dot, .nav-trigger .caret { transition: none !important; transform: none !important; }
  .mega[data-open="true"] { transform: none; }
  .macc[open] .acc-body { animation: none; }
  .acc[open] .acc-body { animation: lr-fade var(--dur-ui) var(--ease-out); }
  [data-form-status]:empty { transform: none; }
  button[aria-busy="true"] [data-btn-label] { animation: none; }
}
@keyframes lr-fade { from { opacity: 0; } }
