*,: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:Barlow,Barlow Fallback,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}.visible{visibility:visible}.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-1\/2{left:50%}.left-6{left:1.5rem}.left-7{left:1.75rem}.right-1{right:.25rem}.top-0{top:0}.top-1\/2{top:50%}.top-3\.5{top:.875rem}.top-5{top:1.25rem}.top-\[4px\]{top:4px}.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-2{grid-row:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.my-7{margin-top:1.75rem;margin-bottom:1.75rem}.-mt-\[2px\]{margin-top:-2px}.-mt-\[5px\]{margin-top:-5px}.-mt-\[6px\]{margin-top:-6px}.mb-1{margin-bottom:.25rem}.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}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.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}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-square{aspect-ratio:1/1}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-3\.5{height:.875rem}.h-8{height:2rem}.h-\[118px\]{height:118px}.h-\[132px\]{height:132px}.h-\[18px\]{height:18px}.h-\[46px\]{height:46px}.h-\[48px\]{height:48px}.h-\[52px\]{height:52px}.h-\[64px\]{height:64px}.h-\[6px\]{height:6px}.h-\[70px\]{height:70px}.h-auto{height:auto}.h-full{height:100%}.max-h-\[calc\(100dvh-72px\)\]{max-height:calc(100dvh - 72px)}.min-h-\[120px\]{min-height:120px}.min-h-\[180px\]{min-height:180px}.min-h-\[44px\]{min-height:44px}.min-h-\[46px\]{min-height:46px}.min-h-\[48px\]{min-height:48px}.min-h-\[56px\]{min-height:56px}.min-h-\[64px\]{min-height:64px}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-3\.5{width:.875rem}.w-8{width:2rem}.w-\[18px\]{width:18px}.w-\[200px\]{width:200px}.w-\[22px\]{width:22px}.w-\[34\%\]{width:34%}.w-\[34px\]{width:34px}.w-\[44px\]{width:44px}.w-\[46px\]{width:46px}.w-\[48px\]{width:48px}.w-\[64px\]{width:64px}.w-\[6px\]{width:6px}.w-\[92px\]{width:92px}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[11ch\]{max-width:11ch}.max-w-\[1240px\]{max-width:1240px}.max-w-\[12ch\]{max-width:12ch}.max-w-\[13ch\]{max-width:13ch}.max-w-\[14ch\]{max-width:14ch}.max-w-\[150px\]{max-width:150px}.max-w-\[15ch\]{max-width:15ch}.max-w-\[16ch\]{max-width:16ch}.max-w-\[18ch\]{max-width:18ch}.max-w-\[20ch\]{max-width:20ch}.max-w-\[36ch\]{max-width:36ch}.max-w-\[38ch\]{max-width:38ch}.max-w-\[40ch\]{max-width:40ch}.max-w-\[42ch\]{max-width:42ch}.max-w-\[46ch\]{max-width:46ch}.max-w-\[48ch\]{max-width:48ch}.max-w-\[50ch\]{max-width:50ch}.max-w-\[52ch\]{max-width:52ch}.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-\[640px\]{max-width:640px}.max-w-\[64ch\]{max-width:64ch}.max-w-\[68ch\]{max-width:68ch}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{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))}.-translate-y-1\/2{--tw-translate-y:-50%}.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-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[0\.9fr_1\.25fr_0\.85fr\]{grid-template-columns:.9fr 1.25fr .85fr}.grid-cols-\[1\.6fr_1fr\]{grid-template-columns:1.6fr 1fr}.grid-cols-\[1fr_1\.3fr_0\.8fr\]{grid-template-columns:1fr 1.3fr .8fr}.grid-cols-\[1fr_1fr_1fr_0\.85fr\]{grid-template-columns:1fr 1fr 1fr .85fr}.grid-cols-\[22px_1fr\]{grid-template-columns:22px 1fr}.grid-cols-\[26px_1fr\]{grid-template-columns:26px 1fr}.grid-cols-\[28px_1fr\]{grid-template-columns:28px 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.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-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.gap-x-14{-moz-column-gap:3.5rem;column-gap:3.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.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-10{row-gap:2.5rem}.gap-y-2{row-gap:.5rem}.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}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.break-all{word-break:break-all}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[1px\]{border-radius:1px}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-\[1\.5px\]{border-width:1.5px}.border-\[3px\]{border-width:3px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-0{border-left-width:0}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-brass{--tw-border-opacity:1;border-color:rgb(var(--c-brass)/var(--tw-border-opacity,1))}.border-ink{--tw-border-opacity:1;border-color:rgb(var(--c-ink)/var(--tw-border-opacity,1))}.border-rule{--tw-border-opacity:1;border-color:rgb(var(--c-rule)/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-board{--tw-bg-opacity:1;background-color:rgb(var(--c-board)/var(--tw-bg-opacity,1))}.bg-board-deep{--tw-bg-opacity:1;background-color:rgb(var(--c-board-deep)/var(--tw-bg-opacity,1))}.bg-brass{--tw-bg-opacity:1;background-color:rgb(var(--c-brass)/var(--tw-bg-opacity,1))}.bg-paper{--tw-bg-opacity:1;background-color:rgb(var(--c-paper)/var(--tw-bg-opacity,1))}.bg-paper\/\[0\.06\]{background-color:rgb(var(--c-paper)/.06)}.bg-white\/\[0\.06\]{background-color:hsla(0,0%,100%,.06)}.fill-rule{fill:rgb(var(--c-rule)/1)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.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}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.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-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.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-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-2\.5{padding-bottom:.625rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.pb-9{padding-bottom:2.25rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-\[34px\]{padding-left:34px}.pr-0{padding-right:0}.pr-10{padding-right:2.5rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.pr-6{padding-right:1.5rem}.pr-7{padding-right:1.75rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-14{padding-top:3.5rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-9{padding-top:2.25rem}.pt-\[9\%\]{padding-top:9%}.text-center{text-align:center}.font-display{font-family:Big Shoulders Display,Big Shoulders Fallback,sans-serif}.font-label{font-family:Barlow Semi Condensed,Barlow SC Fallback,sans-serif}.font-sans{font-family:Barlow,Barlow Fallback,sans-serif}.text-\[10\.5px\]{font-size:10.5px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14\.5px\]{font-size:14.5px}.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-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[21px\]{font-size:21px}.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-\[36px\]{font-size:36px}.text-\[40px\]{font-size:40px}.text-\[44px\]{font-size:44px}.text-\[46px\]{font-size:46px}.text-\[56px\]{font-size:56px}.text-\[60px\]{font-size:60px}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.leading-\[0\.94\]{line-height:.94}.leading-\[0\.95\]{line-height:.95}.leading-\[0\.98\]{line-height:.98}.leading-\[1\.2\]{line-height:1.2}.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\.005em\]{letter-spacing:-.005em}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[0\.04em\]{letter-spacing:.04em}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-normal{letter-spacing:0}.tracking-tight{letter-spacing:-.025em}.text-\[\#E5A11A\]{--tw-text-opacity:1;color:rgb(229 161 26/var(--tw-text-opacity,1))}.text-\[\#FF6B6F\]{--tw-text-opacity:1;color:rgb(255 107 111/var(--tw-text-opacity,1))}.text-alert{--tw-text-opacity:1;color:rgb(var(--c-alert)/var(--tw-text-opacity,1))}.text-brass{--tw-text-opacity:1;color:rgb(var(--c-brass)/var(--tw-text-opacity,1))}.text-brass-deep{--tw-text-opacity:1;color:rgb(var(--c-brass-deep)/var(--tw-text-opacity,1))}.text-ink{--tw-text-opacity:1;color:rgb(var(--c-ink)/var(--tw-text-opacity,1))}.text-ink-dim{--tw-text-opacity:1;color:rgb(var(--c-ink-dim)/var(--tw-text-opacity,1))}.text-ink-mute{--tw-text-opacity:1;color:rgb(var(--c-ink-mute)/var(--tw-text-opacity,1))}.text-nickel{--tw-text-opacity:1;color:rgb(var(--c-nickel)/var(--tw-text-opacity,1))}.text-paper{--tw-text-opacity:1;color:rgb(var(--c-paper)/var(--tw-text-opacity,1))}.text-paper\/80{color:rgb(var(--c-paper)/.8)}.text-paper\/85{color:rgb(var(--c-paper)/.85)}.text-stamp{--tw-text-opacity:1;color:rgb(var(--c-stamp)/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\/65{color:hsla(0,0%,100%,.65)}.text-white\/75{color:hsla(0,0%,100%,.75)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.underline{text-decoration-line:underline}.decoration-brass{text-decoration-color:rgb(var(--c-brass)/1)}.decoration-paper\/30{text-decoration-color:rgb(var(--c-paper)/.3)}.decoration-2{text-decoration-thickness:2px}.underline-offset-4{text-underline-offset:4px}.underline-offset-\[6px\]{text-underline-offset:6px}.shadow-\[0_0_0_1px_rgb\(221_221_232\)\]{--tw-shadow:0 0 0 1px #dddde8;--tw-shadow-colored:0 0 0 1px 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-\[0_1px_0_rgb\(0_0_0\/0\.06\)\2c 0_10px_24px_-14px_rgb\(23_20_67\/0\.35\)\]{--tw-shadow:0 1px 0 rgb(0 0 0/0.06),0 10px 24px -14px rgb(23 20 67/0.35);--tw-shadow-colored:0 1px 0 var(--tw-shadow-color),0 10px 24px -14px 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-\[0_1px_0_rgb\(0_0_0\/0\.06\)\2c 0_14px_26px_-16px_rgb\(23_20_67\/0\.45\)\]{--tw-shadow:0 1px 0 rgb(0 0 0/0.06),0 14px 26px -16px rgb(23 20 67/0.45);--tw-shadow-colored:0 1px 0 var(--tw-shadow-color),0 14px 26px -16px 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-\[0_1px_0_rgb\(0_0_0\/0\.08\)\2c 0_18px_36px_-22px_rgb\(23_20_67\/0\.45\)\]{--tw-shadow:0 1px 0 rgb(0 0 0/0.08),0 18px 36px -22px rgb(23 20 67/0.45);--tw-shadow-colored:0 1px 0 var(--tw-shadow-color),0 18px 36px -22px 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-\[inset_0_1px_1\.5px_rgb\(0_0_0_\/_0\.35\)\]{--tw-shadow:inset 0 1px 1.5px rgba(0,0,0,.35);--tw-shadow-colored:inset 0 1px 1.5px 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-\[inset_0_1px_2px_rgb\(0_0_0\/0\.35\)\]{--tw-shadow:inset 0 1px 2px rgb(0 0 0/0.35);--tw-shadow-colored:inset 0 1px 2px 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-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);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-paper\/15{--tw-ring-color:rgb(var(--c-paper)/0.15)}.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)}.placeholder\:text-ink-mute::-moz-placeholder{--tw-text-opacity:1;color:rgb(var(--c-ink-mute)/var(--tw-text-opacity,1))}.placeholder\:text-ink-mute::placeholder{--tw-text-opacity:1;color:rgb(var(--c-ink-mute)/var(--tw-text-opacity,1))}.first\:pt-0:first-child{padding-top:0}@media (hover:hover) and (pointer:fine){.hover\:text-brass-deep:hover{--tw-text-opacity:1;color:rgb(var(--c-brass-deep)/var(--tw-text-opacity,1))}.hover\:text-ink:hover{--tw-text-opacity:1;color:rgb(var(--c-ink)/var(--tw-text-opacity,1))}.hover\:text-paper:hover{--tw-text-opacity:1;color:rgb(var(--c-paper)/var(--tw-text-opacity,1))}.hover\:text-stamp:hover{--tw-text-opacity:1;color:rgb(var(--c-stamp)/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}}.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-\[3px\]:focus{border-radius:3px}.focus\:bg-ink:focus{--tw-bg-opacity:1;background-color:rgb(var(--c-ink)/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-paper:focus{--tw-text-opacity:1;color:rgb(var(--c-paper)/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:left-10{left:2.5rem}.sm\:my-9{margin-top:2.25rem;margin-bottom:2.25rem}.sm\:flex{display:flex}.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\:grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-center{align-items:center}.sm\:justify-center{justify-content:center}.sm\:gap-5{gap:1.25rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:text-\[18px\]{font-size:18px}.sm\:text-\[58px\]{font-size:58px}}@media (min-width:768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:mb-14{margin-bottom:3.5rem}.md\:mb-16{margin-bottom:4rem}.md\:inline-flex{display:inline-flex}.md\:h-12{height:3rem}.md\:h-\[52px\]{height:52px}.md\:h-\[72px\]{height:72px}.md\:h-\[78px\]{height:78px}.md\:w-\[108px\]{width:108px}.md\:w-\[236px\]{width:236px}.md\:w-\[52px\]{width:52px}.md\:w-\[54px\]{width:54px}.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-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.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-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.md\:grid-cols-\[minmax\(0\2c 5fr\)_minmax\(0\2c 7fr\)\]{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:gap-12{gap:3rem}.md\:gap-16{gap:4rem}.md\:gap-4{gap:1rem}.md\:gap-5{gap:1.25rem}.md\:gap-8{gap:2rem}.md\:gap-9{gap:2.25rem}.md\:gap-x-14{-moz-column-gap:3.5rem;column-gap:3.5rem}.md\:border-b-0{border-bottom-width:0}.md\:border-l{border-left-width:1px}.md\:border-l-0{border-left-width:0}.md\:border-t-0{border-top-width:0}.md\:p-10{padding:2.5rem}.md\:p-5{padding:1.25rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}.md\:p-9{padding:2.25rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}.md\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}.md\:pb-14{padding-bottom:3.5rem}.md\:pb-20{padding-bottom:5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-32{padding-bottom:8rem}.md\:pl-0{padding-left:0}.md\:pl-12{padding-left:3rem}.md\:pl-6{padding-left:1.5rem}.md\:pr-6{padding-right:1.5rem}.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-\[17px\]{font-size:17px}.md\:text-\[20px\]{font-size:20px}.md\:text-\[25px\]{font-size:25px}.md\:text-\[28px\]{font-size:28px}.md\:text-\[32px\]{font-size:32px}.md\:text-\[38px\]{font-size:38px}.md\:text-\[44px\]{font-size:44px}.md\:text-\[48px\]{font-size:48px}.md\:text-\[50px\]{font-size:50px}.md\:text-\[52px\]{font-size:52px}}@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-2{grid-template-columns:repeat(2,minmax(0,1fr))}.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-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[0\.6fr_1\.4fr\]{grid-template-columns:.6fr 1.4fr}.lg\:grid-cols-\[0\.75fr_1\.25fr\]{grid-template-columns:.75fr 1.25fr}.lg\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:grid-cols-\[1\.1fr_0\.9fr\]{grid-template-columns:1.1fr .9fr}.lg\:grid-cols-\[1\.25fr_0\.75fr\]{grid-template-columns:1.25fr .75fr}.lg\:grid-cols-\[1\.4fr_1fr_1fr_1fr_1fr\]{grid-template-columns:1.4fr 1fr 1fr 1fr 1fr}.lg\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.lg\:justify-between{justify-content:space-between}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:border-b-0{border-bottom-width:0}.lg\:border-l{border-left-width:1px}.lg\:px-7{padding-left:1.75rem;padding-right:1.75rem}.lg\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}.lg\:text-\[76px\]{font-size:76px}.lg\:first\:border-l-0:first-child{border-left-width:0}.lg\:first\:pl-0:first-child{padding-left:0}}@media (min-width:1280px){.xl\:gap-7{gap:1.75rem}}.\[\&\>div\:last-child\]\:border-b-0>div:last-child{border-bottom-width:0}@media (min-width:768px){.md\:\[\&\>li\:nth-child\(-n\+2\)\]\:border-t>li:nth-child(-n+2){border-top-width:1px}}.\[\&\>li\]\:border-rule>li{--tw-border-opacity:1;border-color:rgb(var(--c-rule)/var(--tw-border-opacity,1))}
/* Self-hosted Google Fonts (SIL Open Font License), latin subset. Generated from the Google Fonts CSS API. */
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/barlow-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/barlow-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/barlow-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Barlow Semi Condensed'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/barlow-semi-condensed-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 700 800; font-display: swap; src: url(fonts/big-shoulders-display.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* Size-matched fallbacks: while the web fonts load, the system font is scaled to the same text
   width (measured in Chrome), so lines break in the same place and nothing shifts on swap. */
@font-face { font-family: 'Big Shoulders Fallback'; font-weight: 700 800; src: local('Arial Bold'), local('Arial-BoldMT'), local('Roboto Bold'), local('Roboto-Bold'), local('Helvetica Bold'); size-adjust: 77.3%; }
@font-face { font-family: 'Barlow Fallback'; font-weight: 400 600; src: local('Arial'), local('ArialMT'), local('Roboto'), local('Roboto-Regular'), local('Helvetica'); size-adjust: 93.4%; }
@font-face { font-family: 'Barlow SC Fallback'; font-weight: 600; src: local('Arial Bold'), local('Arial-BoldMT'), local('Roboto Bold'), local('Roboto-Bold'), local('Helvetica Bold'); size-adjust: 81.7%; }

/* Mega Lock And Key - site.css
   World: the key-cutting counter's wall of blanks. Light galvanized pegboard, white printed
   label strips, brass and nickel blanks with black transponder heads, navy ink from the logo,
   and stamp red reserved for calling. Square corners, punched holes, catalog rules instead of cards.
   Color tokens feed tailwind.config.cjs (rgb(var(--c-x) / <alpha-value>)). Loaded after tailwind.css. */

:root {
  /* Palette: the first Mega build's colors, drawn from the logo.
     Off-white page, logo navy for text and panels, logo red for calls, icons, and links. */
  --c-board: 247 247 250;        /* page background #F7F7FA */
  --c-board-deep: 239 239 245;   /* alternate band #EFEFF5, pegboard panels */
  --c-paper: 255 255 255;        /* cards, labels, form */
  --c-ink: 23 20 67;             /* logo navy #171443: text, 16:1 */
  --c-ink-dim: 72 70 104;        /* secondary text #484668, 8:1 */
  --c-ink-mute: 102 100 130;     /* tertiary text #666482, 5:1 on the band */
  --c-rule: 221 221 232;         /* hairlines #DDDDE8 */
  --c-brass: 196 38 44;          /* bright logo red #C4262C: icons, rules, decoration */
  --c-brass-deep: 158 29 32;     /* logo red #9E1D20: links and small text, 8:1 */
  --c-nickel: 154 158 165;       /* nickel pegs and blanks */
  --c-stamp: 172 32 36;          /* call + submit fill #AC2024 (white text 7:1) */
  --c-stamp-deep: 150 26 30;     /* pressed call */
  --c-alert: 180 83 9;           /* form errors #B45309, kept apart from the red */

  /* Motion: one curve, two durations. Only transform and opacity animate. */
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-press: 140ms;
  --dur-ui: 200ms;

  color-scheme: light;
  scrollbar-color: rgb(var(--c-nickel)) rgb(var(--c-board));
}

html { scroll-behavior: smooth; -webkit-tap-highlight-color: transparent; }
body {
  background-color: rgb(var(--c-board));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
::selection { background: rgb(var(--c-brass) / 0.3); color: rgb(var(--c-ink)); }
input, textarea, select { caret-color: rgb(var(--c-stamp)); }
.icon { display: inline-block; flex-shrink: 0; vertical-align: middle; }
[id] { scroll-margin-top: 96px; }
.tnum { font-variant-numeric: tabular-nums; }

@media (max-width: 1023px) { body { padding-bottom: calc(80px + env(safe-area-inset-bottom)); } }
[hidden] { display: none !important; }

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

/* ---------- Tactile press on everything tappable ---------- */
a, summary, button { transition: transform var(--dur-press) var(--ease); touch-action: manipulation; }
a:active, summary:active, button:active { transform: scale(0.98); }

/* ---------- Pegboard: the real hole grid, drawn once, used on wall panels ---------- */
.pegboard {
  background-color: rgb(var(--c-board-deep));
  background-image: radial-gradient(circle at 50% 44%, rgb(var(--c-ink) / 0.42) 0 1.6px, rgb(var(--c-ink) / 0.26) 2.6px, transparent 3.1px);
  background-size: 28px 28px;
  background-position: 14px 14px;
}
/* Blanks cast a soft shadow onto the board */
.hang svg { filter: drop-shadow(3px 6px 5px rgb(23 20 67 / 0.22)); }

/* ---------- Buttons: rectangular tags with a punched hole ---------- */
.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);
}
.btn-call {
  background-color: rgb(var(--c-stamp));
  background-image: linear-gradient(180deg, rgb(196 38 44), rgb(150 26 30));
  box-shadow: 0 1px 0 rgb(255 255 255 / 0.22) inset, 0 1px 2px rgb(23 20 67 / 0.14), 0 8px 20px -10px rgb(158 29 32 / 0.75);
}
.btn-call::after { z-index: 0; background: rgb(var(--c-stamp-deep)); }
.btn-call > * { position: relative; z-index: 1; }
.hole::before {
  content: ""; flex-shrink: 0; width: 9px; height: 9px; border-radius: 999px;
  background: rgb(var(--c-board)); box-shadow: inset 0 1px 1.5px rgb(0 0 0 / 0.45);
  position: relative; z-index: 1;
}
.btn-line::after { background: rgb(var(--c-ink)); }
.btn-line:hover { color: rgb(var(--c-paper)); }
.btn-line > * { position: relative; z-index: 1; }

.arrow { transition: transform var(--dur-ui) var(--ease); }
@media (hover: hover) and (pointer: fine) {
  .btn:hover::after { opacity: 1; transition-duration: var(--dur-ui); }
  .link-arrow:hover .arrow, .btn-line:hover .arrow, .row-link:hover .arrow, .label-link:hover .arrow { transform: translateX(3px); }
}

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

/* ---------- The signature: a blank swings on its peg ----------
   Rotation pivots on the key's hole, which sits over the peg. */
.hang { display: block; transform-origin: 50% 12px; transition: transform var(--dur-ui) var(--ease); }
@media (hover: hover) and (pointer: fine) {
  .blank-link:hover .hang { transform: rotate(-6deg); }
}
.blank-link:focus-visible .hang { transform: rotate(-6deg); }
.blank-link:active .hang { transform: rotate(-6deg) scale(0.98); transition-duration: var(--dur-press); }
.blank-link:active { transform: none; }
.peg { width: 10px; height: 10px; border-radius: 999px; background: rgb(var(--c-nickel)); box-shadow: inset 0 -1px 1px rgb(0 0 0 / 0.35), 0 1px 1px rgb(255 255 255 / 0.8); }

/* Label strips: printed white labels under each peg */
.label-strip { background: rgb(var(--c-paper)); box-shadow: 0 0 0 1px rgb(var(--c-rule)), 0 1px 0 rgb(0 0 0 / 0.06); }
@media (hover: hover) and (pointer: fine) { .blank-link:hover .label-strip, .label-link:hover { box-shadow: 0 0 0 1.5px rgb(var(--c-ink)); } }

/* ---------- Mobile menu ---------- */
.mnav {
  visibility: hidden; opacity: 0; transform: translateY(-8px);
  transition: opacity var(--dur-press) var(--ease), transform var(--dur-press) var(--ease), visibility 0s linear var(--dur-press);
}
.mnav[data-open="true"] {
  visibility: visible; opacity: 1; transform: none;
  transition: opacity var(--dur-ui) var(--ease), transform var(--dur-ui) var(--ease), visibility 0s;
}
#mobile-toggle .icon { position: absolute; transition: opacity var(--dur-press) var(--ease), transform var(--dur-ui) var(--ease); }
#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>) ---------- */
details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display: none; }
@media (hover: hover) and (pointer: fine) { .acc summary:hover .acc-q { color: rgb(var(--c-brass-deep)); } }
.acc-icon { transition: transform var(--dur-ui) var(--ease); }
details[open] > summary .acc-icon { transform: rotate(45deg); }
.acc[open] .acc-body { animation: ml-fade-up var(--dur-ui) var(--ease); }
@keyframes ml-fade-up { from { opacity: 0; transform: translateY(-4px); } }

/* ---------- Form: ruled lines, written on like a printed form ---------- */
.field { border-width: 0 0 1.5px; border-color: rgb(var(--c-rule)); border-radius: 0; background: transparent; }
@media (hover: hover) and (pointer: fine) { .field:hover { border-color: rgb(var(--c-ink-mute)); } }
.field:focus { outline: none; border-color: rgb(var(--c-ink)); box-shadow: 0 1.5px 0 rgb(var(--c-ink)); }
.field[aria-invalid="true"] { border-color: rgb(var(--c-alert)); box-shadow: 0 1.5px 0 rgb(var(--c-alert)); }
select.field { background-color: transparent; }
textarea.field { border-width: 1.5px; border-radius: 2px; }

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

/* ---------- Legal prose ---------- */
.prose-legal h2 { font-family: "Big Shoulders Display", "Big Shoulders Fallback", sans-serif; font-size: 28px; font-weight: 800; color: rgb(var(--c-ink)); margin: 2.5rem 0 0.6rem; }
.prose-legal h2:first-of-type { margin-top: 1.25rem; }
.prose-legal p { font-size: 17px; line-height: 1.7; color: rgb(var(--c-ink-dim)); margin-bottom: 0.9rem; }
.prose-legal .meta { font-size: 14px; color: rgb(var(--c-ink-mute)); font-variant-numeric: tabular-nums; }
.prose-legal a { color: rgb(var(--c-ink)); text-decoration: underline; text-decoration-color: rgb(var(--c-brass)); text-underline-offset: 3px; }

/* ---------- Reduced motion: keep fades, drop movement ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  a:active, summary:active, button:active { transform: none; }
  .hang, .arrow, .nav-link::after, .acc-icon, #mobile-toggle .icon { transition: none; }
  .blank-link:hover .hang, .blank-link:focus-visible .hang, .blank-link:active .hang { transform: none; }
  .link-arrow:hover .arrow, .btn-line:hover .arrow, .row-link:hover .arrow, .label-link:hover .arrow { transform: none; }
  .mnav, .mnav[data-open="true"] { transform: none; }
  #mobile-toggle .toggle-close, #mobile-toggle[aria-expanded="true"] .toggle-open { transform: none; }
  .acc[open] .acc-body { animation: ml-fade var(--dur-ui) var(--ease); }
  [data-form-status]:empty { transform: none; }
  button[aria-busy="true"] [data-btn-label] { animation: none; }
}
@keyframes ml-fade { from { opacity: 0; } }

/* ---------- Home: the first build's navy key panel, cards, and band ---------- */
.brand-panel, .band-navy { background-color: rgb(var(--c-ink)); }
.brand-panel {
  background-image: radial-gradient(55% 50% at 50% 30%, rgb(var(--c-brass) / 0.30), transparent 70%);
  box-shadow: 0 1px 2px rgb(23 20 67 / 0.1), 0 30px 60px -30px rgb(23 20 67 / 0.55);
}
.band-navy { background-image: radial-gradient(40% 90% at 85% 50%, rgb(var(--c-brass) / 0.28), transparent 70%); }
.band-navy .btn-call { box-shadow: 0 1px 0 rgb(255 255 255 / 0.22) inset, 0 10px 24px -12px rgb(0 0 0 / 0.55); }
.brand-panel .mark { filter: drop-shadow(0 12px 28px rgb(196 38 44 / 0.45)); }
.icon-tile { background: linear-gradient(180deg, rgb(var(--c-brass) / 0.10), rgb(var(--c-brass) / 0.03)); box-shadow: inset 0 0 0 1px rgb(var(--c-brass) / 0.16); }
.card { position: relative; transition: transform var(--dur-ui) var(--ease); }
.card::after {
  content: ""; position: absolute; inset: -1px; border-radius: inherit; pointer-events: none;
  box-shadow: inset 0 0 0 1px rgb(var(--c-brass) / 0.55), 0 18px 40px -20px rgb(23 20 67 / 0.25);
  opacity: 0; transition: opacity var(--dur-ui) var(--ease);
}
@media (hover: hover) and (pointer: fine) {
  .card:hover { transform: translateY(-2px); }
  .card:hover::after { opacity: 1; }
  .card:hover .link-arrow .arrow, .panel-row:hover .arrow { transform: translateX(3px); }
  .panel-row:hover .arrow { color: #FF6B6F; }
}
.card:active { transform: scale(0.98); transition-duration: var(--dur-press); }
@media (prefers-reduced-motion: reduce) {
  .card:hover, .card:active { transform: none; }
  .card:hover .link-arrow .arrow, .panel-row:hover .arrow { transform: none; }
}

/* ---------- Guide articles ---------- */
.prose-guide h2 { font-family: "Big Shoulders Display", "Big Shoulders Fallback", sans-serif; font-size: 30px; font-weight: 800; line-height: 1.05; color: rgb(var(--c-ink)); margin: 2.5rem 0 0.75rem; }
.prose-guide h2:first-child { margin-top: 0; }
.prose-guide p, .prose-guide li { font-size: 17px; line-height: 1.7; color: rgb(var(--c-ink-dim)); }
.prose-guide p { margin-bottom: 1rem; }
.prose-guide ul, .prose-guide ol { margin: 0 0 1.25rem 1.25rem; }
.prose-guide ul { list-style: disc; }
.prose-guide ol { list-style: decimal; }
.prose-guide li { margin-bottom: 0.5rem; padding-left: 0.25rem; }
.prose-guide li::marker { color: rgb(var(--c-brass)); }
.prose-guide strong { color: rgb(var(--c-ink)); font-weight: 600; }
.prose-guide a { color: rgb(var(--c-ink)); font-weight: 600; text-decoration: underline; text-decoration-color: rgb(var(--c-brass)); text-decoration-thickness: 2px; text-underline-offset: 4px; }

picture { display: contents; }

/* Small text links get a 44px tap area without changing layout */
.tap { display: inline-block; padding-block: 12px; margin-block: -12px; }

/* Service-area maps (src/maps.mjs): pale counties on paper, navy town pins, red for the current town */
.map-county { fill: rgb(var(--c-board-deep)); stroke: rgb(var(--c-nickel)); stroke-width: 1.5; }
.map-county.is-active { fill: rgb(var(--c-brass) / 0.07); stroke: rgb(var(--c-brass) / 0.6); }
.map-county-label { font: 600 15px "Barlow Semi Condensed", system-ui, sans-serif; fill: rgb(var(--c-ink-mute)); letter-spacing: 0.08em; text-transform: uppercase; paint-order: stroke; stroke: rgb(var(--c-board-deep)); stroke-width: 5px; stroke-linejoin: round; pointer-events: none; }
.map-dot { fill: rgb(var(--c-ink)); stroke: #fff; stroke-width: calc(2px * var(--s, 1)); }
.map-hit { fill: transparent; }
.map-ring { fill: rgb(var(--c-brass) / 0.18); }
.map-town.is-current .map-dot { fill: rgb(var(--c-stamp)); }
.map-label { font: 600 13px Barlow, system-ui, sans-serif; fill: rgb(var(--c-ink)); paint-order: stroke; stroke: #fff; stroke-width: calc(3.5px * var(--s, 1)); stroke-linejoin: round; pointer-events: none; }
.map-label-current { fill: rgb(var(--c-brass-deep)); }
.map-town .map-dot { transform-box: fill-box; transform-origin: center; transition: transform var(--dur-press) var(--ease); }
.map-tip { opacity: 0; transition: opacity var(--dur-press) var(--ease); }
.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:hover .map-dot { fill: rgb(var(--c-stamp)); }
.map-town:focus-visible { outline: none; }
.map-town:focus-visible .map-hit { stroke: rgb(var(--c-ink)); stroke-width: calc(2px * var(--s, 1)); }
@media (prefers-reduced-motion: reduce) { .map-town .map-dot, .map-tip { transition: none; } .map-town:hover .map-dot, .map-town:focus-visible .map-dot { transform: none; } }

/* Comparison tables: ruled like a parts catalog; scroll inside their own box on small screens */
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border-top: 2px solid rgb(var(--c-ink)); }
.data-table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 15.5px; line-height: 1.5; color: rgb(var(--c-ink-dim)); }
.data-table caption { caption-side: bottom; text-align: left; padding-top: 12px; font-size: 13px; color: rgb(var(--c-ink-mute)); }
.data-table th, .data-table td { padding: 14px 16px 14px 0; border-bottom: 1px solid rgb(var(--c-rule)); text-align: left; vertical-align: top; }
.data-table thead th { font-family: "Barlow Semi Condensed", system-ui, sans-serif; font-weight: 600; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; color: rgb(var(--c-ink-mute)); }
.data-table tbody th { font-weight: 600; color: rgb(var(--c-ink)); }

/* ---------- Header: mega menus (lg+) and compact-on-scroll (transforms only) ---------- */
.site-header { transition: transform var(--dur-ui) var(--ease); }
.hdr-row > * { transition: transform var(--dur-ui) var(--ease); }
.hdr-logo { transform-origin: left center; }
.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); }
.nav-trigger .caret { transition: transform var(--dur-ui) var(--ease); }
.nav-trigger[aria-expanded="true"] .caret { transform: rotate(180deg); }
.nav-trigger[aria-expanded="true"] { color: rgb(var(--c-ink)); }
.nav-trigger[data-current]::after, .nav-trigger[aria-expanded="true"]::after { transform: scaleX(1); }
.mega {
  visibility: hidden; opacity: 0; transform: translateY(-6px);
  box-shadow: 0 24px 40px -28px rgb(23 20 67 / 0.45);
  transition: opacity var(--dur-press) var(--ease), transform var(--dur-press) var(--ease), visibility 0s linear var(--dur-press);
}
.mega[data-open="true"] {
  visibility: visible; opacity: 1; transform: none;
  transition: opacity var(--dur-ui) var(--ease), transform var(--dur-ui) var(--ease), visibility 0s;
}
.mega-head .arrow, .mega-feature .arrow { transition: transform var(--dur-ui) var(--ease); }
@media (hover: hover) and (pointer: fine) {
  .mega-link:hover { color: rgb(var(--c-brass-deep)); }
  .mega-head:hover { box-shadow: 0 0 0 1.5px rgb(var(--c-ink)); }
  .mega-head:hover .arrow, .mega-feature:hover .arrow { transform: translateX(3px); }
}
.macc > summary .acc-icon { transition: transform var(--dur-ui) var(--ease); }
.macc[open] > summary .acc-icon { transform: rotate(45deg); }
@media (prefers-reduced-motion: reduce) {
  .site-header, .hdr-row > *, .mega, .nav-trigger .caret, .mega-head .arrow, .mega-feature .arrow, .macc > summary .acc-icon { transition: none !important; }
  .site-header[data-compact="true"], .site-header[data-compact="true"] .hdr-row > *, .site-header[data-compact="true"] .hdr-logo, .mega[data-open="true"], .mega { transform: none !important; }
}

/* Focus inside mega panels: navy ring on paper, white ring on the navy feature panels */
.mega a:focus-visible { outline: 2px solid rgb(var(--c-ink)); outline-offset: 3px; border-radius: 2px; }
.mega .band-navy a:focus-visible, .mega a.band-navy:focus-visible { outline-color: #fff; }

/* Below 640px tables become stacked rows: row head, then one labelled line per column (no clipping) */
@media (max-width: 639px) {
  .table-wrap { overflow: visible; }
  .data-table { min-width: 0; }
  .data-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .data-table tr { display: block; padding: 14px 0; border-bottom: 1px solid rgb(var(--c-rule)); }
  .data-table th, .data-table td { display: block; padding: 2px 0; border: 0; }
  .data-table tbody th { padding-bottom: 6px; font-size: 16.5px; }
  .data-table td[data-label]:not([data-label=""])::before { content: attr(data-label) ": "; font-family: "Barlow Semi Condensed", system-ui, sans-serif; font-weight: 600; font-size: 12.5px; letter-spacing: 0.08em; text-transform: uppercase; color: rgb(var(--c-ink-mute)); }
}

.map-leader { fill: none; stroke: rgb(var(--c-ink-mute)); stroke-width: 1.2; }
/* The service-area map is drawn 1000 units wide; keep county labels readable when it shrinks on phones */
@media (max-width: 1023px) { .map-county-label { font-size: 24px; } }
@media (max-width: 639px) { .map-county-label { font-size: 27px; letter-spacing: 0.04em; } }
