@layer reset,tokens,base,composition,utilities,blocks,exceptions;@font-face{font-family:ABC Solar;src:url(/fonts/abcsolar.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-italics.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@layer tokens{:root{--space-3xs: clamp(.25rem, .2292rem + .0926vw, .3125rem);--space-2xs: clamp(.5rem, .4792rem + .0926vw, .5625rem);--space-xs: clamp(.75rem, .7083rem + .1852vw, .875rem);--space-s: clamp(1rem, .9583rem + .1852vw, 1.125rem);--space-m: clamp(1.5rem, 1.4375rem + .2778vw, 1.6875rem);--space-l: clamp(2rem, 1.9167rem + .3704vw, 2.25rem);--space-xl: clamp(3rem, 2.875rem + .5556vw, 3.375rem);--space-2xl: clamp(4rem, 3.8333rem + .7407vw, 4.5rem);--space-3xl: clamp(6rem, 5.75rem + 1.1111vw, 6.75rem);--space-4xl: clamp(10rem, 9.5833rem + 1.8519vw, 11.25rem);--space-3xs-2xs: clamp(.25rem, .1458rem + .463vw, .5625rem);--space-2xs-xs: clamp(.5rem, .375rem + .5556vw, .875rem);--space-xs-s: clamp(.75rem, .625rem + .5556vw, 1.125rem);--space-s-m: clamp(1rem, .7708rem + 1.0185vw, 1.6875rem);--space-m-l: clamp(1.5rem, 1.25rem + 1.1111vw, 2.25rem);--space-l-xl: clamp(2rem, 1.5417rem + 2.037vw, 3.375rem);--space-xl-2xl: clamp(3rem, 2.5rem + 2.2222vw, 4.5rem);--space-2xl-3xl: clamp(4rem, 3.0833rem + 4.0741vw, 6.75rem);--space-3xl-4xl: clamp(6rem, 4.25rem + 7.7778vw, 11.25rem);--space-xs-4xl: clamp(.75rem, -2.75rem + 15.5556vw, 11.25rem);--space-s-4xl: clamp(1rem, -2.4167rem + 15.1852vw, 11.25rem);--space-xs-l: clamp(.75rem, .25rem + 2.2222vw, 2.25rem);--space-l-2xl: clamp(2rem, 1.1667rem + 3.7037vw, 4.5rem);--step--1: clamp(.8889rem, .8727rem + .072vw, .9375rem);--step-0: clamp(1rem, .9583rem + .1852vw, 1.125rem);--step-1: clamp(1.125rem, 1.05rem + .3333vw, 1.35rem);--step-2: clamp(1.2656rem, 1.1475rem + .525vw, 1.62rem);--step-3: clamp(1.4238rem, 1.2504rem + .7706vw, 1.944rem);--step-4: clamp(1.6018rem, 1.3581rem + 1.083vw, 2.3328rem);--step-5: clamp(1.802rem, 1.4696rem + 1.4775vw, 2.7994rem);--font-brand: "ABC Solar", system-ui, sans-serif;--font-base: "IBM Plex Sans", system-ui, sans-serif;--font-bold: 700;--tight: 1.1;--mid: 1.3;--loose: 1.6;--prose: 1.65;--font-size-reading: clamp(1.125rem, 1.08rem + .2vw, 1.25rem);--measure-reading: 62ch;--gutter: var(--space-xs-4xl);--radius-s: .125rem;--radius-m: .25rem;--radius-l: .5rem;--ease-circ-out: cubic-bezier(.075,.82,.165,1);--motion-duration: .2s;--motion-duration-slow: .36s;--motion-ease: var(--ease-circ-out);--transition-default: color var(--motion-duration) var(--motion-ease), background-color var(--motion-duration) var(--motion-ease), box-shadow var(--motion-duration) var(--motion-ease), border-color var(--motion-duration) var(--motion-ease), transform var(--motion-duration) var(--motion-ease), opacity var(--motion-duration) var(--motion-ease), filter var(--motion-duration) var(--motion-ease), background-size var(--motion-duration) var(--motion-ease);--transition-move: transform var(--motion-duration) var(--motion-ease);--transition-fade: opacity var(--motion-duration) var(--motion-ease), transform var(--motion-duration) var(--motion-ease);--stroke-thin: 1px solid;--stroke-thick: 2px solid;--stroke-dashed: 1px dashed;--gradient-brand: linear-gradient(to right, var(--primary), var(--secondary));--shadow-primary: oklch(from var(--primary) l c h / .25);--shadow-secondary: oklch(from var(--secondary) l c h / .25);--shadow-glow: -12px 16px 32px -8px var(--shadow-primary), 12px 16px 32px -8px var(--shadow-secondary);--shadow-glow-small: 0px -2px 12px -4px var(--shadow-primary), 0px 2px 12px -4px var(--shadow-secondary);--hue-primary: 273;--hue-secondary: 162;--hue-offwhite: 85;--hue-offblack: 285;--primary-l: oklch(.54 .25 var(--hue-primary));--primary: oklch(.44 .26 var(--hue-primary));--primary-d: oklch(.38 .24 var(--hue-primary));--primary-dd: oklch(.315 .2 var(--hue-primary));--primary-ddd: oklch(.185 .12 var(--hue-primary));--secondary-ll: oklch(.93 .11 var(--hue-secondary));--secondary-l: oklch(.865 .19 var(--hue-secondary));--secondary: oklch(.815 .185 var(--hue-secondary));--secondary-d: oklch(.7 .17 var(--hue-secondary));--secondary-dddd: oklch(.33 .07 var(--hue-secondary));--offwhite: oklch(.84 .012 var(--hue-offwhite));--offblack: oklch(.16 .012 var(--hue-offblack));--offblack-purple: oklch(.16 .04 var(--hue-offblack));--color-bg: var(--offblack);--color-text: var(--offwhite);--color-text-secondary: var(--secondary-ll);--color-surface-level-1: var(--offblack-purple);--color-surface-level-2: var(--primary-ddd);--color-surface-level-3: var(--primary-dd);--color-border: var(--primary-d);--color-accent: var(--primary);--color-accent-less: var(--primary-dd);--color-clickable: var(--secondary);--color-selection: var(--secondary-l);--color-hover: var(--secondary-ll);--color-clickable-muted: var(--secondary-d);--color-clickable-less: var(--secondary-dddd);--logo-1: var(--secondary);--logo-2: var(--primary-d);--logo-hover-1: var(--secondary-l);--logo-hover-2: var(--primary-d)}:root{--light-color-bg: oklch(.965 .015 var(--hue-offwhite));--light-color-text: oklch(.25 .018 var(--hue-offblack));--light-color-text-secondary: var(--primary-ddd);--light-color-surface-level-1: color-mix(in oklch, var(--light-color-bg), var(--secondary) 5%);--light-color-surface-level-2: color-mix(in oklch, var(--light-color-bg), var(--secondary) 12%);--light-color-surface-level-3: color-mix(in oklch, var(--light-color-bg), var(--secondary) 28%);--light-color-border: var(--secondary-d);--light-color-accent: var(--secondary);--light-color-accent-less: var(--secondary-d);--light-color-clickable: var(--primary-d);--light-color-selection: var(--primary-dd);--light-color-hover: var(--primary-dd);--light-color-clickable-less: var(--primary-l);--light-color-clickable-muted: var(--primary);--light-logo-1: var(--primary);--light-logo-2: var(--secondary-d);--light-logo-hover-1: var(--primary-d);--light-logo-hover-2: var(--secondary-d)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg: var(--light-color-bg);--color-text: var(--light-color-text);--color-text-secondary: var(--light-color-text-secondary);--color-surface-level-1: var(--light-color-surface-level-1);--color-surface-level-2: var(--light-color-surface-level-2);--color-surface-level-3: var(--light-color-surface-level-3);--color-border: var(--light-color-border);--color-accent: var(--light-color-accent);--color-accent-less: var(--light-color-accent-less);--color-clickable: var(--light-color-clickable);--color-selection: var(--light-color-selection);--color-hover: var(--light-color-hover);--color-clickable-less: var(--light-color-clickable-less);--color-clickable-muted: var(--light-color-clickable-muted);--logo-1: var(--light-logo-1);--logo-2: var(--light-logo-2);--logo-hover-1: var(--light-logo-hover-1);--logo-hover-2: var(--light-logo-hover-2)}}[data-theme=light]{--color-bg: var(--light-color-bg);--color-text: var(--light-color-text);--color-text-secondary: var(--light-color-text-secondary);--color-surface-level-1: var(--light-color-surface-level-1);--color-surface-level-2: var(--light-color-surface-level-2);--color-surface-level-3: var(--light-color-surface-level-3);--color-border: var(--light-color-border);--color-accent: var(--light-color-accent);--color-accent-less: var(--light-color-accent-less);--color-clickable: var(--light-color-clickable);--color-selection: var(--light-color-selection);--color-hover: var(--light-color-hover);--color-clickable-less: var(--light-color-clickable-less);--color-clickable-muted: var(--light-color-clickable-muted);--logo-1: var(--light-logo-1);--logo-2: var(--light-logo-2);--logo-hover-1: var(--light-logo-hover-1);--logo-hover-2: var(--light-logo-hover-2)}}@layer reset{*,*:before,*:after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body,h1,h2,h3,h4,h5,p,figure,blockquote,dl,dd{margin-block-end:0}ul[role=list],ol[role=list]{list-style:none;padding:0}body{min-height:100vh;line-height:1.6}h1,h2,h3,h4,h5,button,input,label{line-height:1.1}h1,h2,h3,h4,h5{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;display:block;user-select:none}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:1lh}}@layer base{::selection{background-color:var(--color-selection);color:var(--color-bg)}:focus{outline:none}:focus-visible{outline:var(--stroke-thick) var(--color-accent);outline-offset:var(--focus-offset, .2lh)}body{background-color:var(--color-bg);font-family:var(--font-base);font-size:var(--step-0);line-height:var(--loose);color:var(--color-text);display:grid;grid:auto 1fr auto / [full-start] minmax(var(--gutter),1fr) [content-start] min(100% - (var(--gutter) * 2),70rem) [content-end] minmax(var(--gutter),1fr) [full-end]}body>*{grid-column:content}main{--stack-space: var(--space-l-2xl)}a{color:currentColor;text-decoration:none;transition:var(--transition-default)}h1,h2,h3,h4{font-family:var(--font-brand);color:var(--color-text)}h1:not(.header__brand){font-size:var(--step-5);line-height:var(--tight);letter-spacing:-.01em;max-width:20ch}h2{font-size:var(--step-4);line-height:var(--tight);letter-spacing:normal;max-width:35ch}h3{font-size:var(--step-3);line-height:var(--mid);letter-spacing:.01em;max-width:35ch}h4{font-size:var(--step-2);line-height:var(--mid);letter-spacing:.02em}h5{font-family:var(--font-base);font-size:var(--step-1);font-weight:700;line-height:var(--tight);letter-spacing:normal}p{max-width:70ch}small{font-size:var(--step--1)}blockquote{font-style:italic;border-inline-start:.25rem solid var(--color-accent-less);padding-inline-start:var(--space-m);margin-block:var(--space-m);color:color-mix(in oklch,var(--color-text),transparent 30%)}ins{text-decoration:none;background:var(--color-accent);color:var(--color-text);padding-inline:.3em}code{font-family:monospace;background-color:var(--color-surface-level-2);padding:var(--space-3xs) var(--space-3xs);border-radius:var(--radius-m)}kbd{border:var(--stroke-thin) var(--color-text-secondary);padding-block-end:.1em}table{width:100%;border-collapse:collapse;border:var(--stroke-thick) color-mix(in oklch,var(--color-text) 10%,transparent);font-size:var(--step-0);font-family:var(--font-base)}th:first-child,td:first-child{width:auto;padding-inline:var(--space-s-m)}th:not(:first-child){width:100%}th,td{text-align:left;padding:var(--space-xs) var(--space-s);border:none}:is(th,td)~:is(th,td){border-inline-start:var(--stroke-thin) color-mix(in oklch,var(--color-text) 10%,transparent)}th{line-height:var(--tight)}thead th{padding-block:var(--space-s);border-bottom:var(--stroke-thick) color-mix(in oklch,var(--color-text) 10%,transparent);background-color:color-mix(in oklch,var(--color-text) 7%,transparent)}th:only-of-type{border-inline-end:var(--stroke-thick)}tr+tr :is(th,td){border-block-start:none}tbody tr{transition:var(--transition-default)}tbody tr:nth-child(2n){background-color:color-mix(in oklch,var(--color-text) 3%,transparent)}tbody tr:hover{background-color:color-mix(in oklch,var(--color-text) 10%,transparent)}caption{caption-side:bottom;margin-block-start:var(--space-s);font-size:var(--step--1)}[role=list][class],[role=tablist][class]{margin-block:0;padding:0}dt{font-weight:var(--font-bold)}dt+dd{margin-block-start:var(--space-xs)}dd+dt{margin-block-start:var(--space-s)}dd{margin-inline-start:1.5ch}hr{overflow:visible;border:0;height:1px;background-image:linear-gradient(to right,transparent,var(--primary) 10%,var(--secondary) 50%,var(--primary) 90%,transparent);margin-block-end:var(--space-m-l);--flow-space: var(--space-l-xl);width:100%;position:relative;transition:var(--transition-fade);&:after{content:"\1f703";display:block;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-bg);color:var(--color-clickable);padding-inline:var(--space-s);font-size:var(--step-0);line-height:1}}:is(video,iframe[src*=youtube],iframe[src*=vimeo]){display:block;width:100%;height:auto;aspect-ratio:16/9}img{height:auto}figcaption{padding:.7em;font-size:var(--step-0);background-color:var(--color-surface-level-1)}svg:not([class]){width:auto;height:1lh}svg{flex-shrink:0}svg[role=img][width][height]{width:revert;height:revert;background:var(--color-surface-level-1);padding:var(--space-s)}body>header{margin-block-start:var(--space-s);margin-block-end:var(--space-xl-2xl);padding-inline:var(--space-xs-l);--stack-space: var(--space-2xs);& ul{display:flex;flex-direction:row;gap:var(--space-s-m);margin:0}}body>header nav,body>footer nav{& a{display:inline-block;font-size:var(--step--1);color:var(--color-text);background-color:var(--color-bg);padding-inline:var(--space-xs-s);padding-block:var(--space-3xs);border-radius:0 0 var(--radius-s) var(--radius-s);border-top:var(--stroke-thin) var(--color-clickable-less);transition:var(--transition-default);text-decoration:none;&:hover{border-top:var(--stroke-thin) var(--color-clickable);color:var(--color-text);text-decoration:none;box-shadow:var(--shadow-glow-small);transform:scale(1.05)}&:active{background-color:var(--color-surface-level-1);border-top:var(--stroke-thin) var(--color-clickable);box-shadow:var(--shadow-glow-small);color:var(--color-text);text-decoration:none;transform:scale(.98)}}}body>footer{position:relative;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2xl);margin-block:var(--space-3xl-4xl) var(--space-xl-2xl);padding-inline:var(--space-m-l) var(--space-l-xl);padding-block:var(--space-l-xl) var(--space-xl-2xl);background-color:var(--color-bg);& p{max-width:60ch;text-wrap:balance}& nav{display:flex;flex-direction:column;justify-content:flex-end;& ul{display:flex;flex-direction:column;gap:var(--space-s)}}& h2{margin:0;margin-block-start:var(--space-s);padding:0}}form>*:not(input[type=hidden])+*{margin-top:var(--flow-space, 1rem)}:is(input,select,textarea){accent-color:var(--color-accent)}:is(input:not([type=checkbox],[type=radio],[type=color]),select,textarea){padding:.5em .8em;border-radius:var(--radius-s);border:var(--stroke-thin);background:var(--color-bg);color:var(--color-text);width:100%;&::placeholder{color:var(--color-text);opacity:.7}}label{line-height:var(--tight);font-weight:400}label:after{content:"\a";white-space:pre}label:has(input){display:flex;align-items:flex-start;gap:var(--space-2xs);font-weight:400}label:has(input)+label:has(input){--flow-space: var(--space-s-m)}label:has(input) input{transform:translateY(-.1ex)}input:disabled{background:color-mix(in oklch,var(--color-surface-level-2) 20%,transparent)}input:disabled,label input:disabled+*{cursor:not-allowed}fieldset{border:var(--stroke-dashed);padding:var(--space-s)}legend{font-weight:400;padding-inline:var(--space-xs)}summary{font-weight:var(--font-bold);cursor:pointer}details[open] summary{margin-block-end:var(--space-s)}abbr{text-decoration:none;border-bottom:var(--stroke-dashed) var(--color-text-secondary)}aside{padding-block:var(--space-s-m);padding-inline:var(--space-s-m)}}@layer composition{.flow>*+*{margin-block-start:var(--flow-space, 1em)}.stack{display:flex;flex-direction:column;justify-content:flex-start}.stack>*{margin-block:0}.stack>*+*{margin-block-start:var(--stack-space, 1.5rem)}.cluster{display:flex;flex-wrap:wrap;gap:var(--cluster-gap-y, 1rem) var(--cluster-gap-x, 1rem);justify-content:var(--cluster-justify, flex-start);align-items:var(--cluster-align, center)}.repel{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:var(--repel-align, center);gap:var(--repel-gap-y, 0) var(--repel-gap-x, 0)}.full-bleed{grid-column:full;width:100%;max-width:120ch;margin-inline:auto}.switcher{display:flex;flex-wrap:wrap;gap:var(--gutter, 1rem)}.switcher>*{flex-grow:1;flex-basis:calc((var(--threshold, 30rem) - 100%) * 999)}.with-sidebar{display:flex;flex-wrap:wrap;gap:var(--gutter, 1rem)}.sidebar{flex-basis:var(--sidebar-width, 20rem);flex-grow:1}.not-sidebar{flex-basis:0;flex-grow:999;min-inline-size:var(--content-min, 50%)}.reel{display:flex;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;gap:var(--gutter, 1rem)}.reel::-webkit-scrollbar{display:none}.reel>*{flex:0 0 var(--item-width, 20rem)}.container{container-type:inline-size}}@layer utilities{.visually-hidden{border:0;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.glow{box-shadow:var(--shadow-glow)}.elevated{background-color:color-mix(in oklch,var(--color-text),transparent 97%);border-block:var(--stroke-thin) color-mix(in oklch,var(--color-text),transparent 93%)}.border-bottom{border-bottom:var(--stroke-thick);border-image-source:var(--gradient-brand);border-image-slice:1}.prose{display:grid;grid-template-columns:[article-start] var(--space-m-l) [prose-start] min(var(--measure-reading),calc(100% - 2 * var(--space-m-l))) [prose-end] minmax(var(--space-m-l),1fr) [article-end];font-size:var(--font-size-reading);line-height:var(--prose);--flow-space: 1em;hyphens:manual;overflow-wrap:break-word;margin-block-end:var(--space-l-2xl);>*{grid-column:prose;min-inline-size:0;margin-block-end:0}>:first-child{margin-block-start:0}>figure{margin-inline:0}>:is(h2,h3,h4,h5){max-width:none;line-height:var(--mid);letter-spacing:normal}>h2{font-size:var(--step-3)}>:is(h3,h4,h5){font-family:var(--font-base);font-size:var(--step-1);font-weight:var(--font-bold)}>*+:is(h2,h3,h4,h5){margin-block-start:2em}>:is(h2,h3,h4,h5)+*{margin-block-start:.65em}>:is(img,picture,figure,table),>p:has(>img:only-child,>picture:only-child){margin-block-start:calc(var(--space-m) + var(--flow-space));margin-block-end:var(--space-m)}>h2:before,.info-card h2:before{content:"\25b3";display:inline-block;margin-inline-end:.4ch;color:var(--color-accent-less)}>:is(ul,ol){padding-inline-start:1.4em}:is(ul,ol):not([class]){& li+li{margin-block-start:.5em}:is(ul,ol){margin-block:.5em 0}::marker{color:var(--color-clickable)}}& a:not([class]){text-decoration:underline;text-decoration-color:var(--color-clickable);text-decoration-thickness:.06em;text-underline-offset:.18em;&:hover{color:var(--color-clickable)}}>p:last-of-type:after{display:inline-block;vertical-align:-.1ex;content:"\2609";color:var(--color-clickable);margin-inline-start:.5ch}>footer{margin-block:var(--space-2xl-3xl) 0}>aside{margin-block:var(--space-l-xl) var(--space-m-l)}>hr{grid-column:article;width:100%;margin-block-start:var(--space-l-2xl)}}.text-aside{font-size:var(--step--1);opacity:.7}.uppercase{text-transform:uppercase;letter-spacing:.05em}}@layer blocks{.button{--button-bg: var(--color-clickable);--button-hover: var(--color-hover);--button-text: var(--color-bg);--button-x-padding: 1.2em;--button-y-padding: .8em;display:inline-flex;align-items:center;cursor:pointer;padding:var(--button-y-padding) var(--button-x-padding);margin-inline-end:var(--space-2xs-xs);border:none;border-radius:var(--radius-s);background:var(--button-bg);color:var(--button-text);text-transform:uppercase;text-decoration:none;letter-spacing:.01em;line-height:1;font-size:var(--step-0);font-weight:var(--font-bold);transition:var(--transition-default);&:active{transform:scale(.94)}&:hover{background:var(--button-hover)}}.skip-link{position:absolute;left:-9999px;z-index:999;padding:1em;background-color:#000;color:#fff;opacity:0}.skip-link:focus{left:50%;transform:translate(-50%);opacity:1}.header__navigation{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-s) var(--space-s-m);padding-inline:var(--space-2xs-xs);& nav{margin-inline-end:auto;min-width:fit-content;display:flex}& ul{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-s-m);list-style:none}}.header__brand{margin:0;padding-inline:0;padding-block:var(--space-xs);font-size:inherit;line-height:0;width:100%}.logo-mask{display:block;width:100%;aspect-ratio:9 / 1;position:relative;font-size:0;line-height:0;letter-spacing:0;-webkit-mask-image:url(/img/heliocantharus-logo.svg);mask-image:url(/img/heliocantharus-logo.svg);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;background:linear-gradient(to right,var(--logo-1) 30%,var(--logo-2) 70%);&:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,var(--logo-hover-1) 10%,var(--logo-hover-2) 90%);opacity:0;transition:opacity .4s ease}&:hover:after{opacity:1;transition-delay:50ms}}.theme-switch{--switch-height: var(--space-l);--padding: 2px;--thumb-size: calc(var(--switch-height) - (var(--padding) * 2) - 2px);--switch-width: calc((var(--thumb-size) * 2) + (var(--padding) * 4) + 2px);margin-inline-start:var(--space-2xs-xs);position:relative;display:flex;align-items:center;justify-content:space-around;width:var(--switch-width);height:var(--switch-height);padding:var(--padding);background:color-mix(in oklch,var(--color-text) 3%,transparent);border:var(--stroke-thin);border-color:color-mix(in oklch,var(--color-text) 5%,transparent);border-radius:var(--radius-m);cursor:pointer;box-sizing:border-box}.theme-switch__thumb,.theme-switch__icon{transition-duration:var(--motion-duration-slow);transition-timing-function:var(--ease-circ-out)}.theme-switch__thumb{position:absolute;top:50%;left:var(--padding);transform:translateY(-50%);width:calc(var(--thumb-size) + (var(--padding)));height:var(--thumb-size);background:var(--color-surface-level-1);border-radius:calc(var(--radius-m) * .8);transition-property:transform,background-color;z-index:1}.theme-switch__icon{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;color:var(--color-clickable);transition-property:color,opacity;pointer-events:none;& svg{width:100%;height:100%;display:block}}[data-theme=light] .theme-switch__thumb{transform:translateY(-50%) translate(calc(var(--thumb-size) + var(--padding)))}[data-theme=dark] .moon,[data-theme=light] .sun{color:var(--color-clickable);opacity:1}[data-theme=dark] .sun,[data-theme=light] .moon{color:var(--color-clickable-less);opacity:1}.footer__meta{flex:1 1 35ch;max-width:70ch}.footer__list{flex:0 1 auto;min-width:fit-content}.footer__meta a{transition-duration:var(--motion-duration-slow);background-image:var(--gradient-brand);background-repeat:no-repeat;background-size:100% .15ex;background-position:0 100%;padding-bottom:.25ex;&:hover{background-size:85% .15ex;filter:brightness(1.4)}}.footer__list a{display:flex;align-items:center;gap:var(--space-2xs)}.footer__list .icon{width:1em;height:1em;flex-shrink:0}.site-seal{position:absolute;top:0;right:var(--space-l-xl);transform:translateY(-50%);z-index:10;background-color:var(--color-bg);padding:var(--space-2xs);border-radius:var(--radius-m);border:1px solid transparent;background:linear-gradient(var(--color-bg),var(--color-bg)) padding-box,linear-gradient(to bottom,var(--secondary),var(--primary)) border-box}.site-seal img{transition:var(--transition-default);transition-duration:var(--motion-duration-slow);display:block;width:64px;height:auto}.site-seal:hover img,.author-photo:hover img{transform:scale(1.1) rotate(5deg);opacity:1}.post-grid{container-type:inline-size;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:0;align-items:stretch;grid-auto-rows:1fr}@container (max-width: 39.999rem){.post-grid{grid-auto-rows:auto;gap:var(--space-s)}}.post-grid__header,.post-grid__footer{padding-block:var(--space-2xs);padding-inline:0 var(--space-s);& ul{margin-block:var(--space-xs-s);--cluster-gap-y: var(--space-xs-s);--cluster-gap-x: var(--space-2xs-xs)}}.post-card{position:relative;overflow:hidden;height:100%;z-index:1;--stack-space: 0rem;border:var(--stroke-thin);border-color:color-mix(in oklch,var(--color-text),transparent 93%);--bg-card: color-mix(in oklch, var(--color-text) 3%, var(--color-bg));background:linear-gradient(to bottom,var(--bg-card),var(--color-bg) 70%,var(--color-bg)) padding-box;transition:var(--transition-fade)}.post-card:before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;background:var(--gradient-brand) border-box;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:2;opacity:0;transition:opacity var(--motion-duration) var(--motion-ease)}.post-card:hover{transform:scale(.99)}.post-card:hover:before{opacity:.7}.post-card .button:before{content:"";position:absolute;inset:-999px;z-index:10;cursor:pointer}.post-card img{height:8rem;object-fit:cover;object-position:top;flex-shrink:0}.post-card__content{padding:var(--space-s-m);--stack-space: var(--space-xs);flex-grow:1}.post-card__meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-s);font-size:var(--step--1)}.post-card__title{font-size:var(--step-3);line-height:1.1;margin-block-start:var(--space-s);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-card p{font-size:var(--step--1);margin-block-end:auto;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.post-card .button{display:flex;width:fit-content;margin-inline-start:auto;margin-inline-end:0;font-size:var(--step--1);padding:var(--space-s-m);position:relative}.post-nav{align-items:stretch;--repel-gap-y: var(--space-xl);--repel-gap-x: var(--space-2xl);margin-block-end:var(--space-m-l)}.post-nav>*{flex:1 1 20rem;max-width:25rem}@container (max-width: 50rem){.post-nav>*{max-width:100%}}.category-tag{padding:var(--space-3xs) var(--space-xs);color:var(--color-bg);background-color:var(--color-clickable-muted);border-radius:var(--radius-l);transition:var(--transition-default);&:hover{background-color:var(--color-clickable)}}span.category-tag{font-size:var(--step--1);padding:.1em var(--space-2xs);background-color:var(--color-accent-less);color:var(--color-text);&:hover{background-color:var(--color-accent-less)}}.hero{--hero-padding-block: var(--space-l);display:grid;gap:var(--space-s-m) var(--space-m-l);padding:var(--hero-padding-block) var(--space-m-l);margin-block-end:var(--space-xs-l);border-block:var(--stroke-thin) color-mix(in oklch,var(--color-text),transparent 93%);grid-template-areas:"title" "lead"}.hero:has(>.button){grid-template-areas:"title" "lead" "button"}.hero.has-image{grid-template-areas:"title" "lead" "image"}.hero.has-image:has(>.button){grid-template-areas:"title" "lead" "button" "image"}@media(min-width:70rem){.hero{grid-template-columns:auto 1fr;grid-template-areas:"title lead";align-items:start;column-gap:var(--space-l);.hero__title{max-width:10ch}.hero__lead{justify-self:end;max-width:35ch}}.hero:has(>.button){grid-template-areas:"title lead" "button lead"}.hero.has-image{grid-template-areas:"title lead" "image image"}.hero.has-image:has(>.button){grid-template-areas:"title lead" "button lead" "image image"}}.hero__title{grid-area:title;max-width:35ch;font-size:var(--space-l-2xl);line-height:1;letter-spacing:normal;margin:0;hyphens:auto;hyphenate-limit-chars:6 3 3}.hero__image{grid-area:image;margin-inline:calc(var(--space-m-l) * -1);width:calc(100% + (var(--space-m-l) * 2));margin-block-end:calc((var(--hero-padding-block) * -1) + var(--space-m-l));margin-block-start:0}.hero__image img{width:100%;height:22rem;object-fit:cover;object-position:top;border:var(--stroke-thin) color-mix(in oklch,var(--color-text),transparent 97%)}.hero-grid:not(.has-image) .hero__image{display:none}.hero__lead{--stack-space: var(--space-xs);grid-area:lead;align-self:end;max-width:45ch;margin:0;& p{font-size:var(--step-0);border-inline-start:.25rem solid var(--color-accent-less);padding-inline-start:var(--space-xs);text-wrap:pretty}.cluster{--cluster-gap-y: var(--space-3xs);--cluster-gap-x: var(--space-xs)}.cluster>time:after{content:"\b7";margin-inline-start:var(--cluster-gap-x)}.cluster>time:before{content:"\b7";margin-inline-end:var(--cluster-gap-x)}}.hero>.button{grid-area:button;justify-self:start}.newsletter{position:relative;--sidebar-width: 18rem;--gutter: var(--space-l-xl) var(--space-2xl-3xl);margin-block-start:var(--space-3xl-4xl);padding:var(--space-l-xl) var(--space-m-l);& h3{margin:0;margin-block-end:var(--space-s)}& div{--stack-space: var(--space-s)}.text-aside{text-wrap:balance}}h2.newsletter__title{position:absolute;top:calc(var(--space-l) * -1.3);right:0;margin:0;font-size:var(--step-5);text-transform:uppercase;letter-spacing:.02em;background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:1}.newsletter__form{--stack-space: var(--space-s);& div.cluster{--cluster-align: flex-end;--cluster-gap-x: var(--space-3xs);--cluster-gap-y: var(--space-3xs)}& div.stack{--stack-space: var(--space-2xs);flex-grow:1}}.benefit{display:flex;align-items:baseline;text-wrap:balance;gap:.75ch;font-size:var(--step-0);line-height:var(--mid);color:var(--color-text)}.benefit:before{content:"\1f71a";color:var(--primary);flex-shrink:0}.toc{& summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;&::-webkit-details-marker{display:none}}& h2{font-size:var(--step-1);text-transform:uppercase;letter-spacing:.1ch;margin:0;&:before{content:none;display:none}& span{font-family:var(--font-base);text-transform:none;margin-inline-start:1.5ch;transition:var(--transition-default);&:hover{opacity:1}}}}.toc[open] h2 span{display:none}.toc__icon{width:var(--step-0);height:var(--step-0);position:relative;&:before,&:after{content:"";position:absolute;background:currentColor;top:50%;left:50%;transform:translate(-50%,-50%);transition:transform .18s ease-out}&:before{width:100%;height:2px}&:after{width:2px;height:100%}}.toc[open] .toc__icon:after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}.toc__nav{& ul{list-style:none;padding:0;margin:0;font-size:var(--step-0);line-height:var(--mid);margin-block-end:var(--space-s)}& ul ul{margin-inline-start:var(--space-s);margin-block-start:var(--space-xs);padding-inline-start:var(--space-2xs);border-inline-start:var(--stroke-thin) var(--color-border)}& ul ul:last-child{margin-block-end:0}& a{background-image:none;text-decoration:none;filter:none;font-size:var(--step-0);color:var(--color-text);transition:var(--transition-default);opacity:.7;&:hover{color:var(--color-text);opacity:1}}& li{margin-block-start:var(--space-s)}}.seeall{--cluster-justify: center;margin-block-start:var(--space-s-m)}.author-bio{display:flex;position:relative;justify-content:space-between;padding-block:var(--space-l-xl);padding-inline:var(--space-m-l) var(--space-l-xl);background-color:var(--color-bg);gap:var(--space-s-m) var(--space-m-l);flex-wrap:wrap}.author-photo{overflow:hidden;width:var(--space-2xl-3xl);height:var(--space-2xl-3xl);aspect-ratio:1;border:var(--stroke-thin) transparent;background:linear-gradient(var(--color-bg),var(--color-bg)) padding-box,linear-gradient(to bottom,var(--secondary),var(--primary)) border-box;border-radius:var(--radius-s);flex-shrink:0}.author-photo img{width:100%;height:100%;object-fit:cover;object-position:center 37.5%;transition:var(--transition-move);transition-duration:var(--motion-duration-slow)}.author-bio .stack{--stack-space: var(--space-3xs);flex:1;min-width:25ch}.author-bio h2{margin:var(--space-s) 0 0;padding:0}.author-bio h2:before{content:none}.author-bio span{display:block;font-size:var(--step-0);text-wrap:balance}footer.author-bio{margin-block-start:var(--space-m-l);padding-block-end:var(--space-l-xl)}share-actions{display:block;--stack-space: var(--space-s);margin-block:var(--space-2xl-3xl) 0;padding-inline:var(--space-m-l);padding-block:var(--space-m-l) var(--space-l-xl);& h2{font-size:var(--step-1);text-transform:uppercase;letter-spacing:.1ch;margin:0;&:before{content:none;display:none}}}.share-input{flex:1;min-width:25ch;padding:var(--space-xs-s) var(--space-s);font-size:var(--step--1);font-family:monospace;color:var(--color-text);background-color:var(--color-bg);border:var(--stroke-thin);border-radius:var(--radius-s);appearance:none}.input-group{--cluster-align: stretch;--cluster-justify: flex-start;--cluster-gap-x: var(--space-3xs);--cluster-gap-y: var(--space-3xs);& button{white-space:nowrap;flex-shrink:0;margin:0}}.deck-container{padding-block-end:var(--space-2xl-3xl);position:relative;--stack-space: var(--space-l-xl)}.info-card{position:relative;background-color:var(--color-bg);border-top:var(--stroke-thin) var(--color-border);padding:var(--space-m-l);margin-block-end:var(--space-l-xl);box-shadow:var(--shadow-glow-small);& p,ul{font-size:var(--step-0)}& hr{margin-block:var(--space-l-xl)}}@media(min-width:48rem){.info-card{position:sticky;--top-offset: calc(var(--space-l) + (var(--index) * var(--space-s-m)));top:var(--top-offset);z-index:var(--index);height:fit-content;min-height:30rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-clickable) transparent}}.archive-filters{--stack-space: var(--space-s-m);margin-block-start:var(--space-xl-2xl);.cluster{--cluster-gap-y: var(--space-xs-s);--cluster-gap-x: var(--space-2xs-xs)}}.archive-list{>h2+article{margin-block-start:var(--space-s-m)}>article+article{margin-block-start:var(--space-m-l)}& h2{margin-block-start:var(--space-m-l)}.post-card{height:auto}.post-card img{height:clamp(8rem,30vw,20rem)}.post-card__content{& p{font-size:var(--step-0)}}& article .button{font-size:var(--step-0)}}}@layer exceptions{.button[button-variant=secondary]{--button-bg: var(--color-surface-level-3);--button-hover: var(--color-accent);--button-text: var(--color-text)}.button[button-variant=fancy]{--button-bg: var(--gradient-brand);--button-hover: var(--gradient-brand);--button-text: var(--color-bg);opacity:.7;&:hover{opacity:1}}.button[button-variant=typographic]{--button-bg: transparent;--button-hover: transparent;--button-text: var(--color-text);--button-x-padding: .2em;--arrow-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.17 11l-5.38-5.38 1.41-1.42L20.21 12l-8.01 8.01-1.41-1.42L16.17 13H4v-2h12.17z'/%3E%3C/svg%3E") no-repeat center;opacity:1;font-weight:400;color:color-mix(in oklch,var(--button-text) 70%,transparent);&:hover{color:var(--button-text)}&:not([rel=prev]):after{display:inline-block;content:"";margin-inline-start:.5ch;width:1.2em;height:1.2em;background-color:currentColor;transition:var(--transition-move);mask:var(--arrow-mask);-webkit-mask:var(--arrow-mask)}&:not([rel=prev]):hover:after{transform:translate(.5ch)}&[rel=prev]:before{display:inline-block;content:"";margin-inline-end:.5ch;width:1.2em;height:1.2em;background-color:currentColor;transition:var(--transition-move);mask:var(--arrow-mask);-webkit-mask:var(--arrow-mask);transform:rotate(180deg)}&[rel=prev]:hover:before{transform:rotate(180deg) translate(.5ch)}}}@layer exceptions{[hidden]{display:none}.category-tag[aria-current=page]{background:var(--color-accent-less);color:var(--color-text)}[data-pending]{visibility:hidden}share-actions{position:relative}[data-share-status]{position:absolute;inset-inline:var(--space-m-l);bottom:var(--space-2xs);margin:0;font-size:var(--step--1)}[data-share-status]:empty{visibility:hidden}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none;animation:none}.post-card:hover,.site-seal:hover img,.author-photo:hover img,.button:active,body>header nav a:hover,body>footer nav a:hover{transform:none}.button[button-variant=typographic]:not([rel=prev]):hover:after{transform:none}.button[button-variant=typographic][rel=prev]:hover:before{transform:rotate(180deg)}}}
