html{font-size:1em}*,*:before,*:after{box-sizing:border-box}*:not(dialog){margin:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords;scroll-behavior:smooth}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}[id]{rgin-top:5rem}a.unstyled{text-decoration:none;color:inherit}ol.unstyled,ul.unstyled{list-style:none;margin:0;padding:0;text-indent:0;display:flex;li{display:inline-block}}.text-center{text-align:center}@property --_cr{syntax: "<degree>"; inherits: false;}@property --cell-size{syntax: "<length>"; inherits: false;}@property --doc-bg-size{syntax: "<length>"; inherits: false;}@property --column-count{syntax: "<length>"; inherits: false;}@property --remain{syntax: "<length>"; inherits: false;}:root{--cell-size: 5cqi;--column-count: 20;--max-width: 1800px;--shadow-size: 1;--color-x: hsl(346, 87%, 55%);--color-grey: hsl(240, 68%, 45%);--color-link: hsl(10, 100%, 85%);--color-link-2: hsl(10, 100%, 75%);--color-pink: hsl(300, 95%, 42%);--color-pink-2: hsl(300, 90%, 75%);--color-pink-3: hsl(300, 90%, 85%);--color-pink-t: hsl(from var(--color-pink) h s l / .3);--color-pink-a: hsl(from var(--color-pink-3) h s l / .1);--color-pink-b: hsl(from var(--color-pink-3) h s l / .3);--color-grey: hsl(220 55% 50%);--color-link: hsl(335 70% 55%);--color-link-2: hsl(335 90% 75%);--color-link-3: hsl(335 90% 65%);--color-link-t: hsl(from var(--color-link) h s l / .3);--color-link-a: hsl(from var(--color-link-3) h s l / .1);--color-link-b: hsl(from var(--color-link-3) h s l / .3);--color-white: hsl(240, 95%, 99%);--color-white-alpha: hsl(from var(--color-white) h s l /.85);--color-white-alpha-2: hsl(from var(--color-white) h s l /.75);--color-grey-alpha: hsl(from var(--color-grey) h s l / .7);--color-grey-alpha-1: hsl(from var(--color-grey) h s l / .4);--color-grey-alpha-2: hsl(from var(--color-grey) h s l / .2);--color-grey-alpha-3: hsl(from var(--color-grey) h s l / .1);--color-grey-light: hsl(from var(--color-grey) h calc(s*.8) calc(l*1.3) / .5);--color-grid-line: var(--color-grey-light);--color-grid-line-darker: hsl(from var(--color-grey) h calc(s*.6) calc(l*.8) / 1);--color-grid-line-alpha: hsl(from var(--color-grey-light) h s l / .5);--color-grid-line-inv: var(--color-grey);--color-grey2: hsl(from var(--color-grey) h calc(s*.6) calc(l*.6) );--color-grey-alpha-bg: repeating-linear-gradient(-180deg, var(--color-grey-alpha-2) 0, var(--color-grey-alpha-2) calc(var(--cell-size) * .0125), var(--color-grey-alpha-3) calc(var(--cell-size) * .0125), var(--color-grey-alpha-3) calc(var(--cell-size) * .25)), repeating-linear-gradient(-90deg, var(--color-grey-alpha-2) 0, var(--color-grey-alpha-2) calc(var(--cell-size) * .0125), var(--color-grey-alpha-3) calc(var(--cell-size) * .0125), var(--color-grey-alpha-3) calc(var(--cell-size) * .25));--grid-multi: 1;--subgrid-multi: .5;--subgrid-multi2: .25;--bg-size: calc(var(--cell-size) * var(--grid-multi));--bg-size-small: calc(var(--bg-size) * var(--subgrid-multi));--bg-size-smallest: calc(var(--bg-size) * var(--subgrid-multi2));--border-radius-size: calc(var(--cell-size) * var(--shadow-size));--inline-margin: calc(-.075em + var(--cell-size-hlf));--block-margin: calc(-.15em + var(--cell-size-hlf));--block-margin-text-box-trim: calc(var(--cell-size) * .75 + 2px);--letter-spacing-header: -.065em;--cell-size-dbl: calc(var(--cell-size) * 2);--cell-size-hlf: calc(var(--cell-size) * .5);--cell-size-qrt: calc(var(--cell-size) * .25);--cell-size-neg: calc(-1 * var(--cell-size));--cell-size-hlf-neg: calc(-1 * (var(--cell-size) * .5));--cell-size-qrt-neg: calc(-1 * (var(--cell-size) * .25));--font-size-header: calc(var(--cell-size) * 1.4);--font-size-header-small: calc(var(--cell-size) * .7);--font-size-header-smaller: calc(var(--cell-size) * .35);--font-size-menu: calc(var(--cell-size) * .35);--font-size-content: calc(var(--cell-size) * .257);--font-size-smallest: calc(var(--cell-size) * .2)}*{box-sizing:border-box}html,body{margin:0;width:100%;font-family:Space Grotesk;font-weight:400;font-style:normal;color:var(--color-white);background-color:var(--color-grid-line-darker);background-image:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--doc-bg-size) var(--doc-bg-size);background-position-x:-1px;background-position-y:-1px;@media(prefers-reduced-motion:no-preference){background-attachment:fixed}}.ct{max-width:var(--max-width);min-height:100vh;place-content:center;z-index:0;background:#fff;position:relative;container-type:inline-size;container-name:--ct;margin-block-end:var(--remain)}p,h2,h3,h4,h5,h6{font-size:inherit}h2,h3,h4,h5,h6{font-weight:900}.grid{position:relative;contain:content;overflow:hidden;display:grid;grid-template-columns:repeat(auto-fill,var(--cell-size));grid-auto-rows:var(--cell-size);grid-auto-flow:row;min-height:200vh}.grid [id]{scroll-margin-top:var(--cell-size-dbl)}.grid .section>*{transition:filter .25s linear}.hide-fg .grid .section>*{filter:opacity(0)}.hide-fg .grid .divider{background:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--bg-size) var(--bg-size);background-position-x:-1px;background-position-y:-1px}.box{position:relative;z-index:0;line-height:1;border:1px var(--color-grey) solid;>*{text-rendering:geometricPrecision;margin-inline:var(--inline-margin);margin-block:var(--block-margin);@supports (text-box-trim: trim-both){text-box-trim:trim-both;text-box-edge:cap alphabetic;margin-block:var(--block-margin-text-box-trim)}}&:before,&:after{z-index:-1;content:"";position:absolute;top:calc(var(--shadow-size) * var(--cell-size));left:calc(var(--shadow-size) * var(--cell-size-neg));height:100%;width:calc(var(--shadow-size) * var(--cell-size));background-color:var(--color-grid-line);background-image:linear-gradient(to right,var(--color-white) 1px,transparent 1px),linear-gradient(to bottom,var(--color-white) 1px,transparent 1px);background-size:var(--bg-size-smallest) var(--bg-size-smallest);background-position-x:-1px;background-position-y:-2px;@media(prefers-reduced-motion:no-preference){background-attachment:fixed;background-position-x:-1px;background-position-y:-2px}}&:after{left:0;top:unset;bottom:calc(var(--shadow-size) * var(--cell-size-neg));height:calc(var(--shadow-size) * var(--cell-size));width:calc(100% - (var(--shadow-size) * var(--cell-size)));border-radius:0 0 var(--border-radius-size) 0;background-position-y:0px;background-position-x:-3px;@media(prefers-reduced-motion:no-preference){background-position-y:-2px}}}.surface-1{background-image:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--bg-size-small) var(--bg-size-small);background-position-x:-2px;background-position-y:-2px;background-attachment:local;color:var(--color-white);background-color:var(--color-grey);background-color:var(--color-grid-line-darker);@media(prefers-reduced-motion:no-preference){background-attachment:fixed}a{color:inherit;transition:.2s linear;&:hover{color:#fff;text-decoration-thickness:2px}}}.surface-2,.surface-3{color:var(--color-grey);background:#fffb;a{color:inherit;transition:.2s linear;&:hover{color:var(--color-grid-line-darker);text-decoration-thickness:2px}}}.surface-3{background-image:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--bg-size-small) var(--bg-size-small);background-position-x:-2px;background-position-y:-2px;background-attachment:local}.spice{z-index:1;--_column: calc(var(--column-count) - 4);--shadow-size: 1;grid-column-start:var(--_column);grid-column-end:calc(var(--_column) + 2);grid-row:5/7;background-color:transparent;background:repeating-linear-gradient(315deg,var(--color-pink-t) 0,var(--color-pink-t) 3px,var(--color-pink-2) 3px,var(--color-pink-2) 6px);@media(prefers-reduced-motion:no-preference){background-attachment:fixed}border-radius:var(--border-radius-size) var(--border-radius-size) var(--border-radius-size) 0;&:before{border-radius:var(--border-radius-size) 0 0 var(--border-radius-size)}&:after{border-radius:0 0 var(--border-radius-size) 0}}.section{--section-height: 10;--section-start: 1;--section-end: calc(var(--section-start) + var(--section-height));display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-column:1 / 1000;grid-row:var(--section-start) / var(--section-end);background-image:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--bg-size) var(--bg-size);background-position-x:-1px;background-position-y:-1px;position:relative;&:after{z-index:0;position:absolute;inset:0;content:"";background:#fff;animation:--reveal 2s cubic-bezier(.595,.226,.133,.996) forwards}.box{z-index:1;opacity:0;animation:--reveal-box 2s cubic-bezier(.595,.226,.133,.996) forwards;animation-delay:.6s}.box.spice{animation-delay:1.2s}}.divider{--section-start: 11;--section-height: 3;background:repeating-conic-gradient(at 50% 50%,#fff 0 25%,transparent 0 50%),var(--color-grid-line);background-size:calc(var(--bg-size) * 2) calc(var(--bg-size) * 2);background-repeat:repeat;@media(prefers-reduced-motion:no-preference){background-attachment:fixed}}.content{--section-start: 13;--section-height: 17}.curriculum{--section-start: 30;--section-height: 8;div{display:grid;place-items:center;color:var(--color-grey);grid-column:1/ -1;grid-row:1/-1}}.contact{--section-start: 37;--section-height: 18;.box{grid-column-start:5;grid-column-end:calc(var(--column-count) + -5);grid-row:1/10}.box.spice{grid-row:3/5;background-color:transparent;grid-column-start:calc(var(--column-count) - 2);grid-column-end:var(--column-count)}}.hero .logo{font-size:var(--font-size-header);letter-spacing:var(--letter-spacing-header);line-height:1;font-weight:600;white-space:nowrap;border-radius:0 var(--border-radius-size) 0 var(--border-radius-size);color:var(--color-pink)}.hero .logo{grid-column:3/11;grid-row:3/5;>*{text-box-edge:ex alphabetic}}.content .main-content,.content .secondary-content{text-indent:var(--cell-size-hlf);font-size:var(--font-size-content);border-radius:var(--border-radius-size) 0 var(--border-radius-size) var(--border-radius-size);>p:first-of-type{margin-block-start:0}}.content .main-content{grid-column:4/12;grid-row:3/9}.content .secondary-content{grid-column:8/19;grid-row:11/16}.content .img-ct{--_column: calc(var(--column-count) - 6);grid-column-start:var(--_column);grid-column-end:calc(var(--_column) + 5);grid-row:3/9;border-radius:var(--border-radius-size) 0 var(--border-radius-size) 0;&:before{border-radius:var(--border-radius-size) 0 0 0}}.button{appearance:none;background:transparent;border:1px var(--color-white) solid;color:var(--color-white);padding:var(--cell-size-qrt);min-inline-size:var(--cell-size-dbl);min-block-size:var(--cell-size);cursor:pointer;transition:.2s linear;&:hover{color:var(--color-grey);background-color:var(--color-white)}}@container --ct (width <=1760px){.contact h2{--font-size-header: var(--font-size-header-small)}}@container --ct (width <=1500px){.grid{border:1px #ff0 solid}.content .main-content{grid-column:2/10;grid-row:3/9}.content .img-ct{--_column: calc(var(--column-count) - 4);grid-row:3/8;border-radius:var(--border-radius-size) 0 0 0}.contact{--font-size-header: var(--font-size-header-small)}.contact .box.spice{grid-column-start:calc(var(--column-count) - 2);grid-column-end:var(--column-count)}}@container --ct (width <=1200px){.grid{border:1px #f0f solid}.hero .logo{grid-row:2/4}.hero .spice{grid-row:6/8}.content{--shadow-size: .5}.content .main-content{grid-column:2/9;grid-row:3/10}.content .secondary-content{grid-column:2/12;grid-row:11/16}.content .img-ct{grid-column-start:calc(var(--column-count) - 3);grid-column-end:calc(var(--column-count));grid-row:3/7;>img{object-fit:contain;max-height:100%}}.contact .box{grid-column-start:2;grid-column-end:calc(var(--column-count))}.contact .box h2{font-size:var(--font-size-header-small)}.contact .box.spice{grid-row:11/13}}@container --ct (width <=960px){.grid{border:1px #0ff solid}.hero .spice{--column: calc(var(--column-count) - 2)}.content .main-content{grid-column:2/8;grid-row:3/11;>h2{font-size:var(--font-size-header-smaller)}}.content .secondary-content{grid-column:1/-1;grid-row:12/17}}@container --ct (width <=880px){.grid{border:1px #0f0 solid;--inline-margin: calc(-.25rem + var(--cell-size-qrt));--block-margin: calc(-.5rem + var(--cell-size-qrt));--block-margin-text-box-trim: calc(var(--cell-size) * .375);--grid-multi: .5;--shadow-size: .5;--font-size-header: var(--font-size-header-small)}.hero .logo{grid-column:2/6;grid-row:3/4}.content{--section-start: 14;--section-height: 20;.main-content{grid-row:8/15;grid-column-start:2;grid-column-end:var(--column-count)}.secondary-content{grid-row:16/20}.img-ct{grid-row:2/7;grid-column-start:2;grid-column-end:6}}.curriculum{--section-start: 34;--section-height: 4}.contact{--section-start: 38;--section-height: 14;.box:not(.spice){--shadow-size: .25}.box>*{font-size:var(--font-size-smallest)}.box h2{font-size:var(--font-size-content)}.button{min-block-size:var(--cell-size-hlf)}.form-group{flex-direction:column}.form-textarea{resize:none}.form-footer{position:static;flex-wrap:wrap;gap:var(--cell-size-qrt);margin-block:var(--cell-size-qrt)}input::placeholder{color:transparent}}}@container --ct (width <=640px){.hero .spice{grid-column:3/5}.content{--section-height: 22;.secondary-content{grid-row-end:22}}.curriculum{--section-start: 36}.contact{--section-start: 40}}@container --ct (width <=410px){.content{--section-start: 14;--section-height: 26;.secondary-content{grid-row:16/26}.content .main-content{grid-column:1 / -1}}}@container --ct (width <=321px){.hero .logo{grid-column:1/5}.hero .spice{grid-column:2/4}}@keyframes --reveal{to{transform:translate(100%)}}@keyframes --reveal-box{to{opacity:1}}.grid{border-color:transparent!important}nav[data-astro-cid-pux6a34n]{z-index:2;top:calc(var(--cell-size) * .5);left:calc(var(--cell-size) * (var(--column-count) - 1.5));position:fixed;align-self:start;button{margin:0;padding:0;appearance:none;background:none;border:1px var(--color-grey-light) solid;width:var(--cell-size);height:var(--cell-size);color:var(--color-pink);border-radius:0 var(--cell-size-hlf) 0 var(--cell-size-hlf);cursor:pointer;transform:translateY(0);transition:color .2s linear,transform .2s ease-out;&:hover{background:var(--color-grid-line-darker);color:var(--color-white);transform:translateY(-2px)}&:active{color:var(--color-grid-line);transform:translateY(2px)}svg{width:100%;height:100%}.close-menu{display:none}}&:has(:popover-open) button[data-astro-cid-pux6a34n]{.open-menu{display:none}.close-menu{display:block}}}menu[data-astro-cid-pux6a34n]{position-anchor:auto;position-area:span-all left;top:calc(var(--cell-size) + var(--cell-size-hlf));right:1px;width:calc(var(--cell-size) * 4 + -1px);margin:0;padding:0;background-size:var(--cell-size-qrt) var(--cell-size-qrt);border:0;border-radius:var(--cell-size-hlf) 0 var(--cell-size-hlf) 0;font-size:var(--font-size-menu);&::backdrop{animation:--reveal-box .8s cubic-bezier(.595,.226,.133,.996) forwards;opacity:.5;background-color:var(--color-white-alpha);background-image:linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px);background-size:var(--cell-size-hlf) var(--cell-size-hlf)}ul{flex-flow:column;min-height:calc(var(--cell-size) * 5);justify-content:space-around;align-items:center}li{height:calc(var(--cell-size-hlf))}a{color:var(--color-white-alpha);text-decoration:underline;text-decoration-color:transparent;font-weight:700;padding:2px 10px;&:hover{color:#fff}&:active{color:var(--color-grid-line)}}}.scrollsuggest[data-astro-cid-umzpdglm]{grid-row:-1;width:100cqi;display:flex;place-content:center;a{line-height:0;width:var(--cell-size);aspect-ratio:1;color:var(--color-grid-line);display:flex;place-content:center;transform:translateY(0);transition:color .2s linear,transform .2s ease-out;&:hover{color:var(--color-pink);transform:translateY(-2px)}&:active{color:var(--color-grid-line);transform:translateY(2px)}}svg{width:var(--cell-size-hlf)}}.img-ct{display:flex;align-items:flex-end;img{margin:0;width:100%;height:auto}}.main-content{>h2{font-size:var(--font-size-header-small)}}.quote{font-style:italic;position:relative;&:before,&:after{font-style:normal;font-size:var(--font-size-header-small);content:"“"}&:after{position:absolute;right:0;content:"”"}}.secondary-content{--shadow-size: .5}.logocloud[data-astro-cid-pmwbo5us]{position:relative;isolation:isolate;overflow:hidden;max-width:100vw;height:100%;mask-image:linear-gradient(to left,#0000,#000 10% 90%,#0000);ul{top:0;left:0;width:max-content;height:max-content;display:flex;align-items:center;transform:translate(var(--offset-start));@media(prefers-reduced-motion:no-preference){animation:--scroll-right 90s linear infinite}@media(min-width:60rem){animation-duration:70s}}li{display:flex;flex-flow:column;align-items:center;font-size:var(--font-size-xs);max-width:max-content;text-align:center;margin-inline:var(--cell-size-hlf);color:transparent;transition:.2s color linear;&:hover{color:currentColor}}.img-wrap{overflow:hidden;filter:grayscale(1);&:hover{filter:grayscale(0)}>img{object-fit:contain}}}@keyframes --scroll-left{to{transform:translate(var(--offset-end))}}@keyframes --scroll-right{0%{transform:translate(var(--offset-end))}to{transform:translate(0)}}.box:not(.spice){--shadow-size: .5;position:relative;background-attachment:local}.contact h2{font-size:var(--font-size-header);min-block-size:var(--cell-size-hlf)}.formbox{display:grid;grid-template-rows:var(--cell-size) 1fr var(--cell-size-hlf)}.contact-form{display:flex;flex-flow:column;font-size:var(--font-size-content)}.form-group{display:flex;flex-direction:row;min-block-size:var(--cell-size-hlf);&:not(:first-child){margin-block-start:var(--cell-size-hlf)}label{min-inline-size:var(--cell-size-dbl);line-height:var(--cell-size-hlf)}}.form-input,.form-textarea{padding:0;display:flex;inline-size:100%;color:var(--color-white);font-weight:400;border:none;border-bottom:1px var(--color-white) solid;background:none;line-height:var(--cell-size-hlf)}.form-textarea{min-block-size:var(--cell-size-dbl);max-block-size:calc(var(--cell-size) * 3);resize:vertical}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-aubergine-600);font-weight:200}.form-input:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--color-aubergine-500);outline-offset:2px}.form-footer{position:absolute;bottom:var(--cell-size-hlf);display:flex;flex-direction:row;gap:var(--cell-size);align-items:flex-end;>div{line-height:.9}}.contact .box.alt{grid-column:7/16;grid-row:12/14;border-radius:var(--border-radius-size) 0 var(--border-radius-size) var(--border-radius-size);&:before{border-radius:var(--border-radius-size) 0 0 0}ul{height:var(--cell-size);display:flex;align-items:center;flex-direction:row;gap:var(--cell-size-hlf);list-style:none;text-indent:0;li{min-inline-size:calc(var(--cell-size-dbl) * 2)}}svg{aspect-ratio:1;block-size:var(--cell-size-hlf);margin-inline-end:var(--cell-size-qrt);opacity:.75}a{display:flex;flex-direction:row;align-items:center;transition:.2s linear;svg{transition:.2s linear}&:hover svg{opacity:1}}}.footer[data-astro-cid-sz7xmlte]{display:grid;grid-template-rows:1fr var(--cell-size);min-block-size:calc(var(--cell-size) * 5);place-items:center;text-align:center;color:#fff;background-color:var(--color-grid-line-darker);position:relative;overflow:clip;z-index:0;&:before{position:absolute;z-index:-1;content:"";inset:0;background-image:linear-gradient(to bottom,var(--color-grid-line) 1px,transparent 1px),linear-gradient(to right,var(--color-grid-line) 1px,transparent 1px);background-size:var(--bg-size) var(--bg-size);background-position-x:-1px;background-position-y:-1px;background-attachment:fixed}.top>*{block-size:var(--cell-size);place-content:center}.main{font-size:var(--font-size-header-smaller);white-space:nowrap}i{color:var(--color-white-alpha-2);opacity:.7;font-style:normal;margin-inline:.5ch}a{color:inherit;text-decoration:none;transition:.2s linear;&:hover{color:var(--color-white-alpha)}}.ew>a{color:var(--color-white-alpha-2);font-weight:400;>strong{transition:.2s linear}&:hover>strong{color:#fff}}}
