@charset "UTF-8";
@layer libs, site;
:where(html) {
  --font-sans:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  --font-serif:ui-serif,serif;
  --font-mono:Dank Mono,Operator Mono,Inconsolata,Fira Mono,ui-monospace,SF Mono,Monaco,Droid Sans Mono,Source Code Pro,monospace;
  --font-weight-1:100;
  --font-weight-2:200;
  --font-weight-3:300;
  --font-weight-4:400;
  --font-weight-5:500;
  --font-weight-6:600;
  --font-weight-7:700;
  --font-weight-8:800;
  --font-weight-9:900;
  --font-lineheight-00:.95;
  --font-lineheight-0:1.1;
  --font-lineheight-1:1.25;
  --font-lineheight-2:1.375;
  --font-lineheight-3:1.5;
  --font-lineheight-4:1.75;
  --font-lineheight-5:2;
  --font-letterspacing-0:-.05em;
  --font-letterspacing-1:.025em;
  --font-letterspacing-2:.050em;
  --font-letterspacing-3:.075em;
  --font-letterspacing-4:.150em;
  --font-letterspacing-5:.500em;
  --font-letterspacing-6:.750em;
  --font-letterspacing-7:1em;
  --font-size-00:.5rem;
  --font-size-0:.75rem;
  --font-size-1:1rem;
  --font-size-2:1.1rem;
  --font-size-3:1.25rem;
  --font-size-4:1.5rem;
  --font-size-5:2rem;
  --font-size-6:2.5rem;
  --font-size-7:3rem;
  --font-size-8:3.5rem;
  --font-size-fluid-0:clamp(.75rem,2vw,1rem);
  --font-size-fluid-1:clamp(1rem,4vw,1.5rem);
  --font-size-fluid-2:clamp(1.5rem,6vw,2.5rem);
  --font-size-fluid-3:clamp(2rem,9vw,3.5rem);
  --size-000:-.5rem;
  --size-00:-.25rem;
  --size-1:.25rem;
  --size-2:.5rem;
  --size-3:1rem;
  --size-4:1.25rem;
  --size-5:1.5rem;
  --size-6:1.75rem;
  --size-7:2rem;
  --size-8:3rem;
  --size-9:4rem;
  --size-10:5rem;
  --size-11:7.5rem;
  --size-12:10rem;
  --size-13:15rem;
  --size-14:20rem;
  --size-15:30rem;
  --size-fluid-1:clamp(.5rem,1vw,1rem);
  --size-fluid-2:clamp(1rem,2vw,1.5rem);
  --size-fluid-3:clamp(1.5rem,3vw,2rem);
  --size-fluid-4:clamp(2rem,4vw,3rem);
  --size-fluid-5:clamp(4rem,5vw,5rem);
  --size-fluid-6:clamp(5rem,7vw,7.5rem);
  --size-fluid-7:clamp(7.5rem,10vw,10rem);
  --size-fluid-8:clamp(10rem,20vw,15rem);
  --size-fluid-9:clamp(15rem,30vw,20rem);
  --size-fluid-10:clamp(20rem,40vw,30rem);
  --size-content-1:20ch;
  --size-content-2:45ch;
  --size-content-3:60ch;
  --size-header-1:20ch;
  --size-header-2:25ch;
  --size-header-3:35ch;
  --size-xxs:240px;
  --size-xs:360px;
  --size-sm:480px;
  --size-md:768px;
  --size-lg:1024px;
  --size-xl:1440px;
  --size-xxl:1920px;
  --ease-1:cubic-bezier(.25,0,.5,1);
  --ease-2:cubic-bezier(.25,0,.4,1);
  --ease-3:cubic-bezier(.25,0,.3,1);
  --ease-4:cubic-bezier(.25,0,.2,1);
  --ease-5:cubic-bezier(.25,0,.1,1);
  --ease-in-1:cubic-bezier(.25,0,1,1);
  --ease-in-2:cubic-bezier(.50,0,1,1);
  --ease-in-3:cubic-bezier(.70,0,1,1);
  --ease-in-4:cubic-bezier(.90,0,1,1);
  --ease-in-5:cubic-bezier(1,0,1,1);
  --ease-out-1:cubic-bezier(0,0,.75,1);
  --ease-out-2:cubic-bezier(0,0,.50,1);
  --ease-out-3:cubic-bezier(0,0,.3,1);
  --ease-out-4:cubic-bezier(0,0,.1,1);
  --ease-out-5:cubic-bezier(0,0,0,1);
  --ease-in-out-1:cubic-bezier(.1,0,.9,1);
  --ease-in-out-2:cubic-bezier(.3,0,.7,1);
  --ease-in-out-3:cubic-bezier(.5,0,.5,1);
  --ease-in-out-4:cubic-bezier(.7,0,.3,1);
  --ease-in-out-5:cubic-bezier(.9,0,.1,1);
  --ease-elastic-1:cubic-bezier(.5,.75,.75,1.25);
  --ease-elastic-2:cubic-bezier(.5,1,.75,1.25);
  --ease-elastic-3:cubic-bezier(.5,1.25,.75,1.25);
  --ease-elastic-4:cubic-bezier(.5,1.5,.75,1.25);
  --ease-elastic-5:cubic-bezier(.5,1.75,.75,1.25);
  --ease-squish-1:cubic-bezier(.5,-.1,.1,1.5);
  --ease-squish-2:cubic-bezier(.5,-.3,.1,1.5);
  --ease-squish-3:cubic-bezier(.5,-.5,.1,1.5);
  --ease-squish-4:cubic-bezier(.5,-.7,.1,1.5);
  --ease-squish-5:cubic-bezier(.5,-.9,.1,1.5);
  --ease-step-1:steps(2);
  --ease-step-2:steps(3);
  --ease-step-3:steps(4);
  --ease-step-4:steps(7);
  --ease-step-5:steps(10);
  --layer-1:1;
  --layer-2:2;
  --layer-3:3;
  --layer-4:4;
  --layer-5:5;
  --layer-important:2147483647;
  --shadow-color:220 3% 15%;
  --shadow-strength:1%;
  --shadow-1:0 1px 2px -1px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --shadow-2:0 3px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 7px 14px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%));
  --shadow-3:0 -1px 3px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 1px 2px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 2px 5px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 4%)),0 4px 12px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%)),0 12px 15px -5px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 7%));
  --shadow-4:0 -2px 5px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 1px 1px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 2px 2px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 5px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 4%)),0 9px 9px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%)),0 16px 16px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 6%));
  --shadow-5:0 -1px 2px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 2px 1px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 5px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 10px 10px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 4%)),0 20px 20px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%)),0 40px 40px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 7%));
  --shadow-6:0 -1px 2px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 2%)),0 3px 2px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 7px 5px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 3%)),0 12px 10px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 4%)),0 22px 18px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 5%)),0 41px 33px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 6%)),0 100px 80px -2px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 7%));
  --inner-shadow-0:inset 0 0 0 1px hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --inner-shadow-1:inset 0 1px 2px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --inner-shadow-2:inset 0 1px 4px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --inner-shadow-3:inset 0 2px 8px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --inner-shadow-4:inset 0 2px 14px 0 hsl(var(--shadow-color)/calc(var(--shadow-strength) + 9%));
  --ratio-square:1;
  --ratio-landscape:4/3;
  --ratio-portrait:3/4;
  --ratio-widescreen:16/9;
  --ratio-ultrawide:18/5;
  --ratio-golden:1.6180/1;
  --gray-0:#f8f9fa;
  --gray-1:#f1f3f5;
  --gray-2:#e9ecef;
  --gray-3:#dee2e6;
  --gray-4:#ced4da;
  --gray-5:#adb5bd;
  --gray-6:#868e96;
  --gray-7:#495057;
  --gray-8:#343a40;
  --gray-9:#212529;
  --gray-10:#16191d;
  --gray-11:#0d0f12;
  --gray-12:#030507;
  --stone-0:#f8fafb;
  --stone-1:#f2f4f6;
  --stone-2:#ebedef;
  --stone-3:#e0e4e5;
  --stone-4:#d1d6d8;
  --stone-5:#b1b6b9;
  --stone-6:#979b9d;
  --stone-7:#7e8282;
  --stone-8:#666968;
  --stone-9:#50514f;
  --stone-10:#3a3a37;
  --stone-11:#252521;
  --stone-12:#121210;
  --red-0:#fff5f5;
  --red-1:#ffe3e3;
  --red-2:#ffc9c9;
  --red-3:#ffa8a8;
  --red-4:#ff8787;
  --red-5:#ff6b6b;
  --red-6:#fa5252;
  --red-7:#f03e3e;
  --red-8:#e03131;
  --red-9:#c92a2a;
  --red-10:#b02525;
  --red-11:#962020;
  --red-12:#7d1a1a;
  --pink-0:#fff0f6;
  --pink-1:#ffdeeb;
  --pink-2:#fcc2d7;
  --pink-3:#faa2c1;
  --pink-4:#f783ac;
  --pink-5:#f06595;
  --pink-6:#e64980;
  --pink-7:#d6336c;
  --pink-8:#c2255c;
  --pink-9:#a61e4d;
  --pink-10:#8c1941;
  --pink-11:#731536;
  --pink-12:#59102a;
  --purple-0:#f8f0fc;
  --purple-1:#f3d9fa;
  --purple-2:#eebefa;
  --purple-3:#e599f7;
  --purple-4:#da77f2;
  --purple-5:#cc5de8;
  --purple-6:#be4bdb;
  --purple-7:#ae3ec9;
  --purple-8:#9c36b5;
  --purple-9:#862e9c;
  --purple-10:#702682;
  --purple-11:#5a1e69;
  --purple-12:#44174f;
  --violet-0:#f3f0ff;
  --violet-1:#e5dbff;
  --violet-2:#d0bfff;
  --violet-3:#b197fc;
  --violet-4:#9775fa;
  --violet-5:#845ef7;
  --violet-6:#7950f2;
  --violet-7:#7048e8;
  --violet-8:#6741d9;
  --violet-9:#5f3dc4;
  --violet-10:#5235ab;
  --violet-11:#462d91;
  --violet-12:#3a2578;
  --indigo-0:#edf2ff;
  --indigo-1:#dbe4ff;
  --indigo-2:#bac8ff;
  --indigo-3:#91a7ff;
  --indigo-4:#748ffc;
  --indigo-5:#5c7cfa;
  --indigo-6:#4c6ef5;
  --indigo-7:#4263eb;
  --indigo-8:#3b5bdb;
  --indigo-9:#364fc7;
  --indigo-10:#2f44ad;
  --indigo-11:#283a94;
  --indigo-12:#21307a;
  --blue-0:#e7f5ff;
  --blue-1:#d0ebff;
  --blue-2:#a5d8ff;
  --blue-3:#74c0fc;
  --blue-4:#4dabf7;
  --blue-5:#339af0;
  --blue-6:#228be6;
  --blue-7:#1c7ed6;
  --blue-8:#1971c2;
  --blue-9:#1864ab;
  --blue-10:#145591;
  --blue-11:#114678;
  --blue-12:#0d375e;
  --cyan-0:#e3fafc;
  --cyan-1:#c5f6fa;
  --cyan-2:#99e9f2;
  --cyan-3:#66d9e8;
  --cyan-4:#3bc9db;
  --cyan-5:#22b8cf;
  --cyan-6:#15aabf;
  --cyan-7:#1098ad;
  --cyan-8:#0c8599;
  --cyan-9:#0b7285;
  --cyan-10:#095c6b;
  --cyan-11:#074652;
  --cyan-12:#053038;
  --teal-0:#e6fcf5;
  --teal-1:#c3fae8;
  --teal-2:#96f2d7;
  --teal-3:#63e6be;
  --teal-4:#38d9a9;
  --teal-5:#20c997;
  --teal-6:#12b886;
  --teal-7:#0ca678;
  --teal-8:#099268;
  --teal-9:#087f5b;
  --teal-10:#066649;
  --teal-11:#054d37;
  --teal-12:#033325;
  --green-0:#ebfbee;
  --green-1:#d3f9d8;
  --green-2:#b2f2bb;
  --green-3:#8ce99a;
  --green-4:#69db7c;
  --green-5:#51cf66;
  --green-6:#40c057;
  --green-7:#37b24d;
  --green-8:#2f9e44;
  --green-9:#2b8a3e;
  --green-10:#237032;
  --green-11:#1b5727;
  --green-12:#133d1b;
  --lime-0:#f4fce3;
  --lime-1:#e9fac8;
  --lime-2:#d8f5a2;
  --lime-3:#c0eb75;
  --lime-4:#a9e34b;
  --lime-5:#94d82d;
  --lime-6:#82c91e;
  --lime-7:#74b816;
  --lime-8:#66a80f;
  --lime-9:#5c940d;
  --lime-10:#4c7a0b;
  --lime-11:#3c6109;
  --lime-12:#2c4706;
  --yellow-0:#fff9db;
  --yellow-1:#fff3bf;
  --yellow-2:#ffec99;
  --yellow-3:#ffe066;
  --yellow-4:#ffd43b;
  --yellow-5:#fcc419;
  --yellow-6:#fab005;
  --yellow-7:#f59f00;
  --yellow-8:#f08c00;
  --yellow-9:#e67700;
  --yellow-10:#b35c00;
  --yellow-11:#804200;
  --yellow-12:#663500;
  --orange-0:#fff4e6;
  --orange-1:#ffe8cc;
  --orange-2:#ffd8a8;
  --orange-3:#ffc078;
  --orange-4:#ffa94d;
  --orange-5:#ff922b;
  --orange-6:#fd7e14;
  --orange-7:#f76707;
  --orange-8:#e8590c;
  --orange-9:#d9480f;
  --orange-10:#bf400d;
  --orange-11:#99330b;
  --orange-12:#802b09;
  --choco-0:#fff8dc;
  --choco-1:#fce1bc;
  --choco-2:#f7ca9e;
  --choco-3:#f1b280;
  --choco-4:#e99b62;
  --choco-5:#df8545;
  --choco-6:#d46e25;
  --choco-7:#bd5f1b;
  --choco-8:#a45117;
  --choco-9:#8a4513;
  --choco-10:#703a13;
  --choco-11:#572f12;
  --choco-12:#3d210d;
  --brown-0:#faf4eb;
  --brown-1:#ede0d1;
  --brown-2:#e0cab7;
  --brown-3:#d3b79e;
  --brown-4:#c5a285;
  --brown-5:#b78f6d;
  --brown-6:#a87c56;
  --brown-7:#956b47;
  --brown-8:#825b3a;
  --brown-9:#6f4b2d;
  --brown-10:#5e3a21;
  --brown-11:#4e2b15;
  --brown-12:#422412;
  --sand-0:#f8fafb;
  --sand-1:#e6e4dc;
  --sand-2:#d5cfbd;
  --sand-3:#c2b9a0;
  --sand-4:#aea58c;
  --sand-5:#9a9178;
  --sand-6:#867c65;
  --sand-7:#736a53;
  --sand-8:#5f5746;
  --sand-9:#4b4639;
  --sand-10:#38352d;
  --sand-11:#252521;
  --sand-12:#121210;
  --camo-0:#f9fbe7;
  --camo-1:#e8ed9c;
  --camo-2:#d2df4e;
  --camo-3:#c2ce34;
  --camo-4:#b5bb2e;
  --camo-5:#a7a827;
  --camo-6:#999621;
  --camo-7:#8c851c;
  --camo-8:#7e7416;
  --camo-9:#6d6414;
  --camo-10:#5d5411;
  --camo-11:#4d460e;
  --camo-12:#36300a;
  --jungle-0:#ecfeb0;
  --jungle-1:#def39a;
  --jungle-2:#d0e884;
  --jungle-3:#c2dd6e;
  --jungle-4:#b5d15b;
  --jungle-5:#a8c648;
  --jungle-6:#9bbb36;
  --jungle-7:#8fb024;
  --jungle-8:#84a513;
  --jungle-9:#7a9908;
  --jungle-10:#658006;
  --jungle-11:#516605;
  --jungle-12:#3d4d04;
  --gradient-1:linear-gradient(to bottom right,#1f005c,#5b0060,#870160,#ac255e,#ca485c,#e16b5c,#f39060,#ffb56b);
  --gradient-2:linear-gradient(to bottom right,#48005c,#8300e2,#a269ff);
  --gradient-3:radial-gradient(circle at top right,#0ff,rgba(0,255,255,0)),radial-gradient(circle at bottom left,#ff1492,rgba(255,20,146,0));
  --gradient-4:linear-gradient(to bottom right,#00f5a0,#00d9f5);
  --gradient-5:conic-gradient(from -270deg at 75% 110%,#f0f,#fffaf0);
  --gradient-6:conic-gradient(from -90deg at top left,#000,#fff);
  --gradient-7:linear-gradient(to bottom right,#72c6ef,#004e8f);
  --gradient-8:conic-gradient(from 90deg at 50% 0%,#111,50%,#222,#111);
  --gradient-9:conic-gradient(from .5turn at bottom center,#add8e6,#fff);
  --gradient-10:conic-gradient(from 90deg at 40% -25%,gold,#f79d03,#ee6907,#e6390a,#de0d0d,#d61039,#cf1261,#c71585,#cf1261,#d61039,#de0d0d,#ee6907,#f79d03,gold,gold,gold);
  --gradient-11:conic-gradient(at bottom left,#ff1493,cyan);
  --gradient-12:conic-gradient(from 90deg at 25% -10%,#ff4500,#d3f340,#7bee85,#afeeee,#7bee85);
  --gradient-13:radial-gradient(circle at 50% 200%,#000142,#3b0083,#b300c3,#ff059f,#ff4661,#ffad86,#fff3c7);
  --gradient-14:conic-gradient(at top right,lime,cyan);
  --gradient-15:linear-gradient(to bottom right,#c7d2fe,#fecaca,#fef3c7);
  --gradient-16:radial-gradient(circle at 50% -250%,#374151,#111827,#000);
  --gradient-17:conic-gradient(from -90deg at 50% -25%,blue,#8a2be2);
  --gradient-18:linear-gradient(0deg,rgba(255,0,0,.8),rgba(255,0,0,0) 75%),linear-gradient(60deg,rgba(255,255,0,.8),rgba(255,255,0,0) 75%),linear-gradient(120deg,rgba(0,255,0,.8),rgba(0,255,0,0) 75%),linear-gradient(180deg,rgba(0,255,255,.8),rgba(0,255,255,0) 75%),linear-gradient(240deg,rgba(0,0,255,.8),rgba(0,0,255,0) 75%),linear-gradient(300deg,rgba(255,0,255,.8),rgba(255,0,255,0) 75%);
  --gradient-19:linear-gradient(to bottom right,#ffe259,#ffa751);
  --gradient-20:conic-gradient(from -135deg at -10% center,orange,#ff7715,#ff522a,#ff3f47,#ff5482,#ff69b4);
  --gradient-21:conic-gradient(from -90deg at 25% 115%,red,#f06,#f0c,#c0f,#60f,#00f,#00f,#00f,#00f);
  --gradient-22:linear-gradient(to bottom right,#acb6e5,#86fde8);
  --gradient-23:linear-gradient(to bottom right,#536976,#292e49);
  --gradient-24:conic-gradient(from .5turn at 0% 0%,#00c476,10%,#82b0ff,90%,#00c476);
  --gradient-25:conic-gradient(at 125% 50%,#b78cf7,#ff7c94,#ffcf0d,#ff7c94,#b78cf7);
  --gradient-26:linear-gradient(to bottom right,#9796f0,#fbc7d4);
  --gradient-27:conic-gradient(from .5turn at bottom left,#ff1493,#639);
  --gradient-28:conic-gradient(from -90deg at 50% 105%,#fff,orchid);
  --gradient-29:radial-gradient(circle at top right,#bfb3ff,rgba(191,179,255,0)),radial-gradient(circle at bottom left,#86acf9,rgba(134,172,249,0));
  --gradient-30:radial-gradient(circle at top right,#00ff80,rgba(0,255,128,0)),radial-gradient(circle at bottom left,#adffd6,rgba(173,255,214,0));
  --noise-1:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.005' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  --noise-2:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.05' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  --noise-3:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.25' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  --noise-4:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 2056 2056' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  --noise-5:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 2056 2056' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");
  --noise-filter-1:contrast(300%) brightness(100%);
  --noise-filter-2:contrast(200%) brightness(150%);
  --noise-filter-3:contrast(200%) brightness(250%);
  --noise-filter-4:contrast(200%) brightness(500%);
  --noise-filter-5:contrast(200%) brightness(1000%);
  --animation-fade-in:fade-in .5s var(--ease-3);
  --animation-fade-in-bloom:fade-in-bloom 2s var(--ease-3);
  --animation-fade-out:fade-out .5s var(--ease-3);
  --animation-fade-out-bloom:fade-out-bloom 2s var(--ease-3);
  --animation-scale-up:scale-up .5s var(--ease-3);
  --animation-scale-down:scale-down .5s var(--ease-3);
  --animation-slide-out-up:slide-out-up .5s var(--ease-3);
  --animation-slide-out-down:slide-out-down .5s var(--ease-3);
  --animation-slide-out-right:slide-out-right .5s var(--ease-3);
  --animation-slide-out-left:slide-out-left .5s var(--ease-3);
  --animation-slide-in-up:slide-in-up .5s var(--ease-3);
  --animation-slide-in-down:slide-in-down .5s var(--ease-3);
  --animation-slide-in-right:slide-in-right .5s var(--ease-3);
  --animation-slide-in-left:slide-in-left .5s var(--ease-3);
  --animation-shake-x:shake-x .75s var(--ease-out-5);
  --animation-shake-y:shake-y .75s var(--ease-out-5);
  --animation-spin:spin 2s linear infinite;
  --animation-ping:ping 5s var(--ease-out-3) infinite;
  --animation-blink:blink 1s var(--ease-out-3) infinite;
  --animation-float:float 3s var(--ease-in-out-3) infinite;
  --animation-bounce:bounce 2s var(--ease-squish-2) infinite;
  --animation-pulse:pulse 2s var(--ease-out-3) infinite;
  --border-size-1:1px;
  --border-size-2:2px;
  --border-size-3:5px;
  --border-size-4:10px;
  --border-size-5:25px;
  --radius-1:2px;
  --radius-2:5px;
  --radius-3:1rem;
  --radius-4:2rem;
  --radius-5:4rem;
  --radius-6:8rem;
  --radius-round:1e5px;
  --radius-blob-1:30% 70% 70% 30%/53% 30% 70% 47%;
  --radius-blob-2:53% 47% 34% 66%/63% 46% 54% 37%;
  --radius-blob-3:37% 63% 56% 44%/49% 56% 44% 51%;
  --radius-blob-4:63% 37% 37% 63%/43% 37% 63% 57%;
  --radius-blob-5:49% 51% 48% 52%/57% 44% 56% 43%;
  --radius-conditional-1:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-1));
  --radius-conditional-2:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-2));
  --radius-conditional-3:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-3));
  --radius-conditional-4:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-4));
  --radius-conditional-5:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-5));
  --radius-conditional-6:clamp(0px,calc(100vw - 100%) * 1e5,var(--radius-6));
}

@media (prefers-color-scheme: dark) {
  :where(html) {
    --shadow-color:220 40% 2%;
    --shadow-strength:25%;
  }
}
@keyframes fade-in {
  to {
    opacity: 1;
  }
}
@keyframes fade-in-bloom {
  0% {
    filter: brightness(1) blur(20px);
    opacity: 0;
  }
  10% {
    filter: brightness(2) blur(10px);
    filter: brightness(0.5) blur(10px);
    opacity: 1;
  }
  to {
    filter: brightness(1) blur(0);
    opacity: 1;
  }
}
@keyframes fade-out {
  to {
    opacity: 0;
  }
}
@keyframes fade-out-bloom {
  to {
    filter: brightness(1) blur(20px);
    opacity: 0;
  }
  10% {
    filter: brightness(2) blur(10px);
    filter: brightness(0.5) blur(10px);
    opacity: 1;
  }
  0% {
    filter: brightness(1) blur(0);
    opacity: 1;
  }
}
@keyframes scale-up {
  to {
    transform: scale(1.25);
  }
}
@keyframes scale-down {
  to {
    transform: scale(0.75);
  }
}
@keyframes slide-out-up {
  to {
    transform: translateY(-100%);
  }
}
@keyframes slide-out-down {
  to {
    transform: translateY(100%);
  }
}
@keyframes slide-out-right {
  to {
    transform: translateX(100%);
  }
}
@keyframes slide-out-left {
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide-in-up {
  0% {
    transform: translateY(100%);
  }
}
@keyframes slide-in-down {
  0% {
    transform: translateY(-100%);
  }
}
@keyframes slide-in-right {
  0% {
    transform: translateX(-100%);
  }
}
@keyframes slide-in-left {
  0% {
    transform: translateX(100%);
  }
}
@keyframes shake-x {
  0%, to {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-5%);
  }
  40% {
    transform: translateX(5%);
  }
  60% {
    transform: translateX(-5%);
  }
  80% {
    transform: translateX(5%);
  }
}
@keyframes shake-y {
  0%, to {
    transform: translateY(0);
  }
  20% {
    transform: translateY(-5%);
  }
  40% {
    transform: translateY(5%);
  }
  60% {
    transform: translateY(-5%);
  }
  80% {
    transform: translateY(5%);
  }
}
@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}
@keyframes ping {
  90%, to {
    opacity: 0;
    transform: scale(2);
  }
}
@keyframes blink {
  0%, to {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
@keyframes float {
  50% {
    transform: translateY(-25%);
  }
}
@keyframes bounce {
  25% {
    transform: translateY(-20%);
  }
  40% {
    transform: translateY(-3%);
  }
  0%, 60%, to {
    transform: translateY(0);
  }
}
@keyframes pulse {
  50% {
    transform: scale(0.9);
  }
}
@layer libs {
  :where(html) {
    --link:var(--indigo-7);
    --link-visited:var(--purple-7);
    --text-1:var(--gray-9);
    --text-2:var(--gray-7);
    --surface-1:var(--gray-0);
    --surface-2:var(--gray-2);
    --surface-3:var(--gray-3);
    --surface-4:var(--gray-4);
    --scrollthumb-color:var(--gray-7);
    -webkit-text-size-adjust: none;
    accent-color: var(--brand, var(--link));
    background-color: var(--surface-1);
    block-size: 100%;
    caret-color: var(--brand, var(--link));
    color: var(--text-2);
    color-scheme: light;
    font-family: var(--font-sans);
    line-height: var(--font-lineheight-3);
    scrollbar-color: var(--scrollthumb-color) transparent;
  }
  @media (dynamic-range: high) {
    @supports (color: color(display-p3 0 0 0)) {
      :where(html) {
        --link:color(display-p3 .1 .4 1);
        --link-visited:color(display-p3 .6 .2 1);
      }
    }
  }
  :where(html) :where(dialog) {
    background-color: var(--surface-1);
  }
  :where(html) :where(button) {
    --_highlight:var(--_highlight-light);
    --_bg:var(--_bg-light);
    --_ink-shadow:var(--_ink-shadow-light);
  }
  :where(html) :where(button) :where([type=reset]) {
    --_text:var(--red-6);
    --_border:var(--red-3);
  }
  :where(html) :where(button, input:is([type=button], [type=submit], [type=reset]))[disabled] {
    --_text:var(--gray-6);
  }
  :where(html) :where(textarea, select, input:not([type=button], [type=submit], [type=reset])) {
    background-color: var(--surface-2);
  }
  @media (prefers-color-scheme: dark) {
    :where(html) {
      --link:var(--indigo-3);
      --link-visited:var(--purple-3);
      --text-1:var(--gray-1);
      --text-2:var(--gray-4);
      --surface-1:var(--gray-9);
      --surface-2:var(--gray-8);
      --surface-3:var(--gray-7);
      --surface-4:var(--gray-6);
      --scrollthumb-color:var(--gray-6);
      --shadow-strength:10%;
      --shadow-color:220 40% 2%;
      color-scheme: dark;
    }
  }
  :where(h1, h2, h3, h4, h5, h6, dt) {
    color: var(--text-1);
  }
  :where(a[href]) {
    color: var(--brand, var(--link));
  }
  :where(a[href]):visited {
    color: var(--link-visited);
  }
  :focus-visible {
    outline-color: var(--brand, var(--link));
  }
  *, :after, :before {
    box-sizing: border-box;
  }
  :where(:not(dialog)) {
    margin: 0;
  }
  :where(:not(fieldset, progress, meter)) {
    background-origin: border-box;
    background-repeat: no-repeat;
    border-style: solid;
    border-width: 0;
  }
  @media (prefers-reduced-motion: no-preference) {
    :where(html) {
      scroll-behavior: smooth;
    }
  }
  @media (prefers-reduced-motion: no-preference) {
    :where(:focus-visible) {
      transition: outline-offset 145ms var(--ease-2);
    }
    :where(:not(:active):focus-visible) {
      transition-duration: 0.25s;
    }
  }
  :where(:not(:active):focus-visible) {
    outline-offset: 5px;
  }
  :where(body) {
    min-block-size: 100%;
  }
  :where(h1, h2, h3, h4, h5, h6) {
    font-weight: var(--font-weight-9);
    line-height: var(--font-lineheight-1);
  }
  :where(h1) {
    font-size: var(--font-size-8);
    max-inline-size: var(--size-header-1);
  }
  :where(h2) {
    font-size: var(--font-size-6);
    max-inline-size: var(--size-header-2);
  }
  :where(h3) {
    font-size: var(--font-size-5);
  }
  :where(h4) {
    font-size: var(--font-size-4);
  }
  :where(h5) {
    font-size: var(--font-size-3);
  }
  :where(h3, h4, h5, h6, dt) {
    max-inline-size: var(--size-header-3);
  }
  :where(p, ul, ol, dl, h6) {
    font-size: var(--font-size-2);
  }
  :where(a, u, ins, abbr) {
    text-underline-offset: 1px;
  }
  @supports (-moz-appearance: none) {
    :where(a, u, ins, abbr) {
      text-underline-offset: 2px;
    }
  }
  :where(a[href], area, button, input, label[for], select, summary, textarea, [tabindex]:not([tabindex*="-"])) {
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
    touch-action: manipulation;
  }
  :where(a) {
    margin-block: calc(var(--size-1) * -1);
    margin-inline: calc(var(--size-1) * -1);
    padding-block: var(--size-1);
    padding-inline: var(--size-1);
  }
  :where(a):where([href]) {
    text-decoration-color: var(--indigo-2);
  }
  :where(a):where([href]):where(:visited) {
    text-decoration-color: var(--purple-2);
  }
  :where(a):where(:not(:hover)) {
    text-decoration: inherit;
  }
  :where(img, svg, video, canvas, audio, iframe, embed, object) {
    display: block;
  }
  :where(img, svg, video) {
    block-size: auto;
    max-inline-size: 100%;
  }
  :where(input, button, textarea, select), :where(input[type=file])::-webkit-file-upload-button {
    color: inherit;
    font: inherit;
    font-size: inherit;
    letter-spacing: inherit;
  }
  ::placeholder {
    color: var(--gray-7);
    opacity: 0.75;
  }
  :where(input:not([type=range]), textarea) {
    padding-block: var(--size-1);
    padding-inline: var(--size-2);
  }
  :where(select) {
    padding-block: 0.75ch;
    padding-inline: 1.25ch 0;
  }
  :where(textarea, select, input:not([type=button], [type=submit], [type=reset])) {
    background-color: var(--surface-2);
    border-radius: var(--radius-2);
  }
  :where(textarea) {
    resize: block;
  }
  :where(input[type=checkbox], input[type=radio]) {
    block-size: var(--size-3);
    inline-size: var(--size-3);
  }
  :where(svg:not([width])) {
    inline-size: var(--size-10);
  }
  :where(code, kbd, samp, pre) {
    font-family: var(--font-mono);
  }
  :where(:not(pre) > code, kbd) {
    white-space: nowrap;
  }
  :where(pre) {
    max-inline-size: max-content;
    min-inline-size: 0;
    white-space: pre;
  }
  :where(:not(pre) > code) {
    background: var(--surface-2);
    border-radius: var(--radius-2);
    padding: var(--size-1) var(--size-2);
  }
  :where(kbd, var) {
    border-color: var(--surface-4);
    border-radius: var(--radius-2);
    border-width: var(--border-size-1);
    padding: var(--size-1) var(--size-2);
  }
  :where(mark) {
    border-radius: var(--radius-2);
    padding-inline: var(--size-1);
  }
  :where(ol, ul) {
    padding-inline-start: var(--size-8);
  }
  :where(li) {
    padding-inline-start: var(--size-2);
  }
  :where(li, dd, figcaption) {
    max-inline-size: var(--size-content-2);
  }
  :where(p) {
    max-inline-size: var(--size-content-3);
  }
  :where(dt, summary) {
    font-weight: var(--font-weight-7);
  }
  :where(dt:not(:first-of-type)) {
    margin-block-start: var(--size-5);
  }
  :where(small) {
    font-size: max(0.5em, var(--font-size-0));
    max-inline-size: var(--size-content-1);
  }
  :where(hr) {
    background-color: var(--surface-3);
    height: var(--border-size-2);
    margin-block: var(--size-fluid-5);
  }
  :where(figure) {
    display: grid;
    gap: var(--size-2);
    place-items: center;
  }
  :where(figure) > :where(figcaption) {
    font-size: var(--font-size-1);
  }
  :where(blockquote, :not(blockquote) > cite) {
    border-inline-start-width: var(--border-size-3);
  }
  :where(blockquote) {
    display: grid;
    gap: var(--size-3);
    max-inline-size: var(--size-content-2);
    padding-block: var(--size-3);
    padding-inline: var(--size-4);
  }
  :where(:not(blockquote) > cite) {
    padding-inline-start: var(--size-2);
  }
  :where(summary) {
    background: var(--surface-3);
    border-radius: var(--radius-2);
    margin: calc(var(--size-2) * -1) calc(var(--size-3) * -1);
    padding: var(--size-2) var(--size-3);
  }
  :where(details) {
    background: var(--surface-2);
    border-radius: var(--radius-2);
    padding-block: var(--size-2);
    padding-inline: var(--size-3);
  }
  :where(details[open] > summary) {
    border-end-end-radius: 0;
    border-end-start-radius: 0;
    margin-bottom: var(--size-2);
  }
  :where(fieldset) {
    border: var(--border-size-1) solid var(--surface-4);
    border-radius: var(--radius-2);
  }
  :where(del) {
    background: var(--red-9);
    color: var(--red-2);
  }
  :where(ins) {
    background: var(--green-9);
    color: var(--green-1);
  }
  :where(abbr) {
    text-decoration-color: var(--blue-5);
  }
  :where(dialog) {
    background-color: var(--surface-1);
    border-radius: var(--radius-3);
    box-shadow: var(--shadow-6);
    color: inherit;
  }
  :where(dialog)::backdrop {
    backdrop-filter: blur(25px);
  }
  :where(html[\:has\(dialog\[open\]\)]) {
    overflow: hidden;
  }
  :where(html:has(dialog[open])) {
    overflow: hidden;
  }
  :where(menu) {
    display: flex;
    gap: var(--size-3);
    padding-inline-start: 0;
  }
  :where(sup) {
    font-size: 0.5em;
  }
  @media (prefers-color-scheme: dark) {
    :where(textarea, select, input:not([type=button], [type=submit], [type=reset])) {
      background-color: #171a1c;
    }
    :where(dialog) {
      background-color: var(--surface-2);
    }
    ::placeholder {
      color: var(--gray-6);
    }
  } /*!
Pure v3.0.0
Copyright 2013 Yahoo!
Licensed under the BSD License.
https://github.com/pure-css/pure/blob/master/LICENSE
*/
  /*!
  normalize.css v | MIT License | https://necolas.github.io/normalize.css/
  Copyright (c) Nicolas Gallagher and Jonathan Neal
  */
  /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
  /* Document
     ========================================================================== */
  /**
   * 1. Correct the line height in all browsers.
   * 2. Prevent adjustments of font size after orientation changes in iOS.
   */
  html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
  }
  /* Sections
     ========================================================================== */
  /**
   * Remove the margin in all browsers.
   */
  body {
    margin: 0;
  }
  /**
   * Render the `main` element consistently in IE.
   */
  main {
    display: block;
  }
  /**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
  h1 {
    font-size: 2em;
    margin: 0.67em 0;
  }
  /* Grouping content
     ========================================================================== */
  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
  hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
  }
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  /* Text-level semantics
     ========================================================================== */
  /**
   * Remove the gray background on active links in IE 10.
   */
  a {
    background-color: transparent;
  }
  /**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
  abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted; /* 2 */
  }
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
  b,
  strong {
    font-weight: bolder;
  }
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  code,
  kbd,
  samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  /**
   * Add the correct font size in all browsers.
   */
  small {
    font-size: 80%;
  }
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  /* Embedded content
     ========================================================================== */
  /**
   * Remove the border on images inside links in IE 10.
   */
  img {
    border-style: none;
  }
  /* Forms
     ========================================================================== */
  /**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
  }
  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
  button,
  input { /* 1 */
    overflow: visible;
  }
  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
  button,
  select { /* 1 */
    text-transform: none;
  }
  /**
   * Correct the inability to style clickable types in iOS and Safari.
   */
  button,
  [type=button],
  [type=reset],
  [type=submit] {
    -webkit-appearance: button;
  }
  /**
   * Remove the inner border and padding in Firefox.
   */
  button::-moz-focus-inner,
  [type=button]::-moz-focus-inner,
  [type=reset]::-moz-focus-inner,
  [type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }
  /**
   * Restore the focus styles unset by the previous rule.
   */
  button:-moz-focusring,
  [type=button]:-moz-focusring,
  [type=reset]:-moz-focusring,
  [type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }
  /**
   * Correct the padding in Firefox.
   */
  fieldset {
    padding: 0.35em 0.75em 0.625em;
  }
  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
  legend {
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
  }
  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  progress {
    vertical-align: baseline;
  }
  /**
   * Remove the default vertical scrollbar in IE 10+.
   */
  textarea {
    overflow: auto;
  }
  /**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
  [type=checkbox],
  [type=radio] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
  }
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
  [type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button {
    height: auto;
  }
  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
  [type=search] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
  }
  /**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
  ::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
  }
  /* Interactive
     ========================================================================== */
  /*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
  details {
    display: block;
  }
  /*
   * Add the correct display in all browsers.
   */
  summary {
    display: list-item;
  }
  /* Misc
     ========================================================================== */
  /**
   * Add the correct display in IE 10+.
   */
  template {
    display: none;
  }
  /**
   * Add the correct display in IE 10.
   */
  [hidden] {
    display: none;
  }
  /*csslint important:false*/
  /* ==========================================================================
     Pure Base Extras
     ========================================================================== */
  /**
   * Extra rules that Pure adds on top of Normalize.css
   */
  html {
    font-family: sans-serif;
  }
  /**
   * Always hide an element when it has the `hidden` HTML attribute.
   */
  .hidden,
  [hidden] {
    display: none !important;
  }
  /**
   * Add this class to an image to make it fit within it's fluid parent wrapper while maintaining
   * aspect ratio.
   */
  .pure-img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  /*csslint regex-selectors:false, known-properties:false, duplicate-properties:false*/
  .pure-g {
    display: flex;
    flex-flow: row wrap;
    /* Prevents distributing space between rows */
    align-content: flex-start;
  }
  .pure-u {
    display: inline-block;
    vertical-align: top;
  }
  .pure-u-1,
  .pure-u-1-1,
  .pure-u-1-2,
  .pure-u-1-3,
  .pure-u-2-3,
  .pure-u-1-4,
  .pure-u-3-4,
  .pure-u-1-5,
  .pure-u-2-5,
  .pure-u-3-5,
  .pure-u-4-5,
  .pure-u-5-5,
  .pure-u-1-6,
  .pure-u-5-6,
  .pure-u-1-8,
  .pure-u-3-8,
  .pure-u-5-8,
  .pure-u-7-8,
  .pure-u-1-12,
  .pure-u-5-12,
  .pure-u-7-12,
  .pure-u-11-12,
  .pure-u-1-24,
  .pure-u-2-24,
  .pure-u-3-24,
  .pure-u-4-24,
  .pure-u-5-24,
  .pure-u-6-24,
  .pure-u-7-24,
  .pure-u-8-24,
  .pure-u-9-24,
  .pure-u-10-24,
  .pure-u-11-24,
  .pure-u-12-24,
  .pure-u-13-24,
  .pure-u-14-24,
  .pure-u-15-24,
  .pure-u-16-24,
  .pure-u-17-24,
  .pure-u-18-24,
  .pure-u-19-24,
  .pure-u-20-24,
  .pure-u-21-24,
  .pure-u-22-24,
  .pure-u-23-24,
  .pure-u-24-24 {
    display: inline-block;
    letter-spacing: normal;
    word-spacing: normal;
    vertical-align: top;
    text-rendering: auto;
  }
  .pure-u-1-24 {
    width: 4.1667%;
  }
  .pure-u-1-12,
  .pure-u-2-24 {
    width: 8.3333%;
  }
  .pure-u-1-8,
  .pure-u-3-24 {
    width: 12.5%;
  }
  .pure-u-1-6,
  .pure-u-4-24 {
    width: 16.6667%;
  }
  .pure-u-1-5 {
    width: 20%;
  }
  .pure-u-5-24 {
    width: 20.8333%;
  }
  .pure-u-1-4,
  .pure-u-6-24 {
    width: 25%;
  }
  .pure-u-7-24 {
    width: 29.1667%;
  }
  .pure-u-1-3,
  .pure-u-8-24 {
    width: 33.3333%;
  }
  .pure-u-3-8,
  .pure-u-9-24 {
    width: 37.5%;
  }
  .pure-u-2-5 {
    width: 40%;
  }
  .pure-u-5-12,
  .pure-u-10-24 {
    width: 41.6667%;
  }
  .pure-u-11-24 {
    width: 45.8333%;
  }
  .pure-u-1-2,
  .pure-u-12-24 {
    width: 50%;
  }
  .pure-u-13-24 {
    width: 54.1667%;
  }
  .pure-u-7-12,
  .pure-u-14-24 {
    width: 58.3333%;
  }
  .pure-u-3-5 {
    width: 60%;
  }
  .pure-u-5-8,
  .pure-u-15-24 {
    width: 62.5%;
  }
  .pure-u-2-3,
  .pure-u-16-24 {
    width: 66.6667%;
  }
  .pure-u-17-24 {
    width: 70.8333%;
  }
  .pure-u-3-4,
  .pure-u-18-24 {
    width: 75%;
  }
  .pure-u-19-24 {
    width: 79.1667%;
  }
  .pure-u-4-5 {
    width: 80%;
  }
  .pure-u-5-6,
  .pure-u-20-24 {
    width: 83.3333%;
  }
  .pure-u-7-8,
  .pure-u-21-24 {
    width: 87.5%;
  }
  .pure-u-11-12,
  .pure-u-22-24 {
    width: 91.6667%;
  }
  .pure-u-23-24 {
    width: 95.8333%;
  }
  .pure-u-1,
  .pure-u-1-1,
  .pure-u-5-5,
  .pure-u-24-24 {
    width: 100%;
  }
  .pure-button {
    /* Structure */
    display: inline-block;
    line-height: normal;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    user-select: none;
    box-sizing: border-box;
  }
  /* Firefox: Get rid of the inner focus border */
  .pure-button::-moz-focus-inner {
    padding: 0;
    border: 0;
  }
  /* Inherit .pure-g styles */
  .pure-button-group {
    letter-spacing: -0.31em; /* Webkit: collapse white-space between units */
    text-rendering: optimizespeed; /* Webkit: fixes text-rendering: optimizeLegibility */
  }
  .opera-only :-o-prefocus,
  .pure-button-group {
    word-spacing: -0.43em;
  }
  .pure-button-group .pure-button {
    letter-spacing: normal;
    word-spacing: normal;
    vertical-align: top;
    text-rendering: auto;
  }
  /*csslint outline-none:false*/
  .pure-button {
    font-family: inherit;
    font-size: 100%;
    padding: 0.5em 1em;
    color: rgba(0, 0, 0, 0.8);
    border: none rgba(0, 0, 0, 0);
    background-color: #E6E6E6;
    text-decoration: none;
    border-radius: 2px;
  }
  .pure-button-hover,
  .pure-button:hover,
  .pure-button:focus {
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.1));
  }
  .pure-button:focus {
    outline: 0;
  }
  .pure-button-active,
  .pure-button:active {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15) inset, 0 0 6px rgba(0, 0, 0, 0.2) inset;
    border-color: #000;
  }
  .pure-button[disabled],
  .pure-button-disabled,
  .pure-button-disabled:hover,
  .pure-button-disabled:focus,
  .pure-button-disabled:active {
    border: none;
    background-image: none;
    opacity: 0.4;
    cursor: not-allowed;
    box-shadow: none;
    pointer-events: none;
  }
  .pure-button-hidden {
    display: none;
  }
  .pure-button-primary,
  .pure-button-selected,
  a.pure-button-primary,
  a.pure-button-selected {
    background-color: rgb(0, 120, 231);
    color: #fff;
  }
  /* Button Groups */
  .pure-button-group .pure-button {
    margin: 0;
    border-radius: 0;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
  }
  .pure-button-group .pure-button:first-child {
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
  }
  .pure-button-group .pure-button:last-child {
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    border-right: none;
  }
  /*csslint box-model:false*/
  /*
  Box-model set to false because we're setting a height on select elements, which
  also have border and padding. This is done because some browsers don't render
  the padding. We explicitly set the box-model for select elements to border-box,
  so we can ignore the csslint warning.
  */
  .pure-form input[type=text],
  .pure-form input[type=password],
  .pure-form input[type=email],
  .pure-form input[type=url],
  .pure-form input[type=date],
  .pure-form input[type=month],
  .pure-form input[type=time],
  .pure-form input[type=datetime],
  .pure-form input[type=datetime-local],
  .pure-form input[type=week],
  .pure-form input[type=number],
  .pure-form input[type=search],
  .pure-form input[type=tel],
  .pure-form input[type=color],
  .pure-form select,
  .pure-form textarea {
    padding: 0.5em 0.6em;
    display: inline-block;
    border: 1px solid #ccc;
    box-shadow: inset 0 1px 3px #ddd;
    border-radius: 4px;
    vertical-align: middle;
    box-sizing: border-box;
  }
  /*
  Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
  since IE8 won't execute CSS that contains a CSS3 selector.
  */
  .pure-form input:not([type]) {
    padding: 0.5em 0.6em;
    display: inline-block;
    border: 1px solid #ccc;
    box-shadow: inset 0 1px 3px #ddd;
    border-radius: 4px;
    box-sizing: border-box;
  }
  /* Chrome (as of v.32/34 on OS X) needs additional room for color to display. */
  /* May be able to remove this tweak as color inputs become more standardized across browsers. */
  .pure-form input[type=color] {
    padding: 0.2em 0.5em;
  }
  .pure-form input[type=text]:focus,
  .pure-form input[type=password]:focus,
  .pure-form input[type=email]:focus,
  .pure-form input[type=url]:focus,
  .pure-form input[type=date]:focus,
  .pure-form input[type=month]:focus,
  .pure-form input[type=time]:focus,
  .pure-form input[type=datetime]:focus,
  .pure-form input[type=datetime-local]:focus,
  .pure-form input[type=week]:focus,
  .pure-form input[type=number]:focus,
  .pure-form input[type=search]:focus,
  .pure-form input[type=tel]:focus,
  .pure-form input[type=color]:focus,
  .pure-form select:focus,
  .pure-form textarea:focus {
    outline: 0;
    border-color: #129FEA;
  }
  /*
  Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
  since IE8 won't execute CSS that contains a CSS3 selector.
  */
  .pure-form input:not([type]):focus {
    outline: 0;
    border-color: #129FEA;
  }
  .pure-form input[type=file]:focus,
  .pure-form input[type=radio]:focus,
  .pure-form input[type=checkbox]:focus {
    outline: thin solid #129FEA;
    outline: 1px auto #129FEA;
  }
  .pure-form .pure-checkbox,
  .pure-form .pure-radio {
    margin: 0.5em 0;
    display: block;
  }
  .pure-form input[type=text][disabled],
  .pure-form input[type=password][disabled],
  .pure-form input[type=email][disabled],
  .pure-form input[type=url][disabled],
  .pure-form input[type=date][disabled],
  .pure-form input[type=month][disabled],
  .pure-form input[type=time][disabled],
  .pure-form input[type=datetime][disabled],
  .pure-form input[type=datetime-local][disabled],
  .pure-form input[type=week][disabled],
  .pure-form input[type=number][disabled],
  .pure-form input[type=search][disabled],
  .pure-form input[type=tel][disabled],
  .pure-form input[type=color][disabled],
  .pure-form select[disabled],
  .pure-form textarea[disabled] {
    cursor: not-allowed;
    background-color: #eaeded;
    color: #cad2d3;
  }
  /*
  Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
  since IE8 won't execute CSS that contains a CSS3 selector.
  */
  .pure-form input:not([type])[disabled] {
    cursor: not-allowed;
    background-color: #eaeded;
    color: #cad2d3;
  }
  .pure-form input[readonly],
  .pure-form select[readonly],
  .pure-form textarea[readonly] {
    background-color: #eee; /* menu hover bg color */
    color: #777; /* menu text color */
    border-color: #ccc;
  }
  .pure-form input:focus:invalid,
  .pure-form textarea:focus:invalid,
  .pure-form select:focus:invalid {
    color: #b94a48;
    border-color: #e9322d;
  }
  .pure-form input[type=file]:focus:invalid:focus,
  .pure-form input[type=radio]:focus:invalid:focus,
  .pure-form input[type=checkbox]:focus:invalid:focus {
    outline-color: #e9322d;
  }
  .pure-form select {
    /* Normalizes the height; padding is not sufficient. */
    height: 2.25em;
    border: 1px solid #ccc;
    background-color: white;
  }
  .pure-form select[multiple] {
    height: auto;
  }
  .pure-form label {
    margin: 0.5em 0 0.2em;
  }
  .pure-form fieldset {
    margin: 0;
    padding: 0.35em 0 0.75em;
    border: 0;
  }
  .pure-form legend {
    display: block;
    width: 100%;
    padding: 0.3em 0;
    margin-bottom: 0.3em;
    color: #333;
    border-bottom: 1px solid #e5e5e5;
  }
  .pure-form-stacked input[type=text],
  .pure-form-stacked input[type=password],
  .pure-form-stacked input[type=email],
  .pure-form-stacked input[type=url],
  .pure-form-stacked input[type=date],
  .pure-form-stacked input[type=month],
  .pure-form-stacked input[type=time],
  .pure-form-stacked input[type=datetime],
  .pure-form-stacked input[type=datetime-local],
  .pure-form-stacked input[type=week],
  .pure-form-stacked input[type=number],
  .pure-form-stacked input[type=search],
  .pure-form-stacked input[type=tel],
  .pure-form-stacked input[type=color],
  .pure-form-stacked input[type=file],
  .pure-form-stacked select,
  .pure-form-stacked label,
  .pure-form-stacked textarea {
    display: block;
    margin: 0.25em 0;
  }
  /*
  Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
  since IE8 won't execute CSS that contains a CSS3 selector.
  */
  .pure-form-stacked input:not([type]) {
    display: block;
    margin: 0.25em 0;
  }
  .pure-form-aligned input,
  .pure-form-aligned textarea,
  .pure-form-aligned select,
  .pure-form-message-inline {
    display: inline-block;
    vertical-align: middle;
  }
  .pure-form-aligned textarea {
    vertical-align: top;
  }
  /* Aligned Forms */
  .pure-form-aligned .pure-control-group {
    margin-bottom: 0.5em;
  }
  .pure-form-aligned .pure-control-group label {
    text-align: right;
    display: inline-block;
    vertical-align: middle;
    width: 10em;
    margin: 0 1em 0 0;
  }
  .pure-form-aligned .pure-controls {
    margin: 1.5em 0 0 11em;
  }
  /* Rounded Inputs */
  .pure-form input.pure-input-rounded,
  .pure-form .pure-input-rounded {
    border-radius: 2em;
    padding: 0.5em 1em;
  }
  /* Grouped Inputs */
  .pure-form .pure-group fieldset {
    margin-bottom: 10px;
  }
  .pure-form .pure-group input,
  .pure-form .pure-group textarea {
    display: block;
    padding: 10px;
    margin: 0 0 -1px;
    border-radius: 0;
    position: relative;
    top: -1px;
  }
  .pure-form .pure-group input:focus,
  .pure-form .pure-group textarea:focus {
    z-index: 3;
  }
  .pure-form .pure-group input:first-child,
  .pure-form .pure-group textarea:first-child {
    top: 1px;
    border-radius: 4px 4px 0 0;
    margin: 0;
  }
  .pure-form .pure-group input:first-child:last-child,
  .pure-form .pure-group textarea:first-child:last-child {
    top: 1px;
    border-radius: 4px;
    margin: 0;
  }
  .pure-form .pure-group input:last-child,
  .pure-form .pure-group textarea:last-child {
    top: -2px;
    border-radius: 0 0 4px 4px;
    margin: 0;
  }
  .pure-form .pure-group button {
    margin: 0.35em 0;
  }
  .pure-form .pure-input-1 {
    width: 100%;
  }
  .pure-form .pure-input-3-4 {
    width: 75%;
  }
  .pure-form .pure-input-2-3 {
    width: 66%;
  }
  .pure-form .pure-input-1-2 {
    width: 50%;
  }
  .pure-form .pure-input-1-3 {
    width: 33%;
  }
  .pure-form .pure-input-1-4 {
    width: 25%;
  }
  /* Inline help for forms */
  .pure-form-message-inline {
    display: inline-block;
    padding-left: 0.3em;
    color: #666;
    vertical-align: middle;
    font-size: 0.875em;
  }
  /* Block help for forms */
  .pure-form-message {
    display: block;
    color: #666;
    font-size: 0.875em;
  }
  @media only screen and (max-width: 480px) {
    .pure-form button[type=submit] {
      margin: 0.7em 0 0;
    }
    .pure-form input:not([type]),
    .pure-form input[type=text],
    .pure-form input[type=password],
    .pure-form input[type=email],
    .pure-form input[type=url],
    .pure-form input[type=date],
    .pure-form input[type=month],
    .pure-form input[type=time],
    .pure-form input[type=datetime],
    .pure-form input[type=datetime-local],
    .pure-form input[type=week],
    .pure-form input[type=number],
    .pure-form input[type=search],
    .pure-form input[type=tel],
    .pure-form input[type=color],
    .pure-form label {
      margin-bottom: 0.3em;
      display: block;
    }
    .pure-group input:not([type]),
    .pure-group input[type=text],
    .pure-group input[type=password],
    .pure-group input[type=email],
    .pure-group input[type=url],
    .pure-group input[type=date],
    .pure-group input[type=month],
    .pure-group input[type=time],
    .pure-group input[type=datetime],
    .pure-group input[type=datetime-local],
    .pure-group input[type=week],
    .pure-group input[type=number],
    .pure-group input[type=search],
    .pure-group input[type=tel],
    .pure-group input[type=color] {
      margin-bottom: 0;
    }
    .pure-form-aligned .pure-control-group label {
      margin-bottom: 0.3em;
      text-align: left;
      display: block;
      width: 100%;
    }
    .pure-form-aligned .pure-controls {
      margin: 1.5em 0 0 0;
    }
    .pure-form-message-inline,
    .pure-form-message {
      display: block;
      font-size: 0.75em;
      /* Increased bottom padding to make it group with its related input element. */
      padding: 0.2em 0 0.8em;
    }
  }
  /*csslint adjoining-classes: false, box-model:false*/
  .pure-menu {
    box-sizing: border-box;
  }
  .pure-menu-fixed {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 3;
  }
  .pure-menu-list,
  .pure-menu-item {
    position: relative;
  }
  .pure-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .pure-menu-item {
    padding: 0;
    margin: 0;
    height: 100%;
  }
  .pure-menu-link,
  .pure-menu-heading {
    display: block;
    text-decoration: none;
    white-space: nowrap;
  }
  /* HORIZONTAL MENU */
  .pure-menu-horizontal {
    width: 100%;
    white-space: nowrap;
  }
  .pure-menu-horizontal .pure-menu-list {
    display: inline-block;
  }
  /* Initial menus should be inline-block so that they are horizontal */
  .pure-menu-horizontal .pure-menu-item,
  .pure-menu-horizontal .pure-menu-heading,
  .pure-menu-horizontal .pure-menu-separator {
    display: inline-block;
    vertical-align: middle;
  }
  /* Submenus should still be display: block; */
  .pure-menu-item .pure-menu-item {
    display: block;
  }
  .pure-menu-children {
    display: none;
    position: absolute;
    left: 100%;
    top: 0;
    margin: 0;
    padding: 0;
    z-index: 3;
  }
  .pure-menu-horizontal .pure-menu-children {
    left: 0;
    top: auto;
    width: inherit;
  }
  .pure-menu-allow-hover:hover > .pure-menu-children,
  .pure-menu-active > .pure-menu-children {
    display: block;
    position: absolute;
  }
  /* Vertical Menus - show the dropdown arrow */
  .pure-menu-has-children > .pure-menu-link:after {
    padding-left: 0.5em;
    content: "▸";
    font-size: small;
  }
  /* Horizontal Menus - show the dropdown arrow */
  .pure-menu-horizontal .pure-menu-has-children > .pure-menu-link:after {
    content: "▾";
  }
  /* scrollable menus */
  .pure-menu-scrollable {
    overflow-y: scroll;
    overflow-x: hidden;
  }
  .pure-menu-scrollable .pure-menu-list {
    display: block;
  }
  .pure-menu-horizontal.pure-menu-scrollable .pure-menu-list {
    display: inline-block;
  }
  .pure-menu-horizontal.pure-menu-scrollable {
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto;
    /* a little extra padding for this style to allow for scrollbars */
    padding: 0.5em 0;
  }
  /* misc default styling */
  .pure-menu-separator,
  .pure-menu-horizontal .pure-menu-children .pure-menu-separator {
    background-color: #ccc;
    height: 1px;
    margin: 0.3em 0;
  }
  .pure-menu-horizontal .pure-menu-separator {
    width: 1px;
    height: 1.3em;
    margin: 0 0.3em;
  }
  /* Need to reset the separator since submenu is vertical */
  .pure-menu-horizontal .pure-menu-children .pure-menu-separator {
    display: block;
    width: auto;
  }
  .pure-menu-heading {
    text-transform: uppercase;
    color: #565d64;
  }
  .pure-menu-link {
    color: #777;
  }
  .pure-menu-children {
    background-color: #fff;
  }
  .pure-menu-link,
  .pure-menu-heading {
    padding: 0.5em 1em;
  }
  .pure-menu-disabled {
    opacity: 0.5;
  }
  .pure-menu-disabled .pure-menu-link:hover {
    background-color: transparent;
    cursor: default;
  }
  .pure-menu-active > .pure-menu-link,
  .pure-menu-link:hover,
  .pure-menu-link:focus {
    background-color: #eee;
  }
  .pure-menu-selected > .pure-menu-link,
  .pure-menu-selected > .pure-menu-link:visited {
    color: #000;
  }
  .pure-table {
    /* Remove spacing between table cells (from Normalize.css) */
    border-collapse: collapse;
    border-spacing: 0;
    empty-cells: show;
    border: 1px solid #cbcbcb;
  }
  .pure-table caption {
    color: #000;
    font: italic 85%/1 arial, sans-serif;
    padding: 1em 0;
    text-align: center;
  }
  .pure-table td,
  .pure-table th {
    border-left: 1px solid #cbcbcb; /*  inner column border */
    border-width: 0 0 0 1px;
    font-size: inherit;
    margin: 0;
    overflow: visible; /*to make ths where the title is really long work*/
    padding: 0.5em 1em; /* cell padding */
  }
  .pure-table thead {
    background-color: #e0e0e0;
    color: #000;
    text-align: left;
    vertical-align: bottom;
  }
  /*
  striping:
     even - #fff (white)
     odd  - #f2f2f2 (light gray)
  */
  .pure-table td {
    background-color: transparent;
  }
  .pure-table-odd td {
    background-color: #f2f2f2;
  }
  /* nth-child selector for modern browsers */
  .pure-table-striped tr:nth-child(2n-1) td {
    background-color: #f2f2f2;
  }
  /* BORDERED TABLES */
  .pure-table-bordered td {
    border-bottom: 1px solid #cbcbcb;
  }
  .pure-table-bordered tbody > tr:last-child > td {
    border-bottom-width: 0;
  }
  /* HORIZONTAL BORDERED TABLES */
  .pure-table-horizontal td,
  .pure-table-horizontal th {
    border-width: 0 0 1px 0;
    border-bottom: 1px solid #cbcbcb;
  }
  .pure-table-horizontal tbody > tr:last-child > td {
    border-bottom-width: 0;
  }
}
@layer site {
  :root {
    --brand-color: #098567;
    --brand-color: oklch(54.92% 0.107 169.5);
    --brand-light: var(--brand-color);
    --link-visited: #098567;
    --surface-1-light: #fff;
    --black: #000;
    /* set defaults */
    --brand: var(--brand-light);
    --text-1: var(--text-1-light);
    --text-2: var(--text-2-light);
    --surface-1: var(--surface-1-light);
    --surface-2: var(--surface-2-light);
    --surface-3: var(--surface-3-light);
    --surface-4: var(--surface-4-light);
    --surface-shadow: var(--surface-shadow-light);
    --shadow-strength: var(--shadow-strength-light);
    --header-background: oklch(100% 0 0 / 60%);
  }
  @font-face {
    font-family: "Ubuntu";
    src: url("../fonts/Ubuntu-Light.woff2") format("woff2");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "Ubuntu";
    src: url("../fonts/Ubuntu-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "Ubuntu";
    src: url("../fonts/Ubuntu-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: "Ubuntu";
    src: url("../fonts/Ubuntu-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
  }
  html {
    font-family: "Ubuntu", sans-serif;
  }
  ::selection {
    background-color: oklch(90% 0.05 169.5);
    color: #000;
    color: var(--text-1);
  }
  :where(p) {
    margin-block: 1em;
  }
  :where(p) {
    max-inline-size: unset;
  }
  :where(p, main ul:not([class]), main ol:not([class])) {
    line-height: 1.618;
  }
  :where(main > ul:not([class])) > li:nth-child(1n+2) {
    margin-block-start: var(--size-3);
  }
  :where(main > ul:not([class])) li::marker {
    content: url("data:image/svg+xml,%3Csvg width='10' height='16' viewBox='0 0 10 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.21751 2.28249C2.41278 2.08722 2.72936 2.08722 2.92462 2.28249L8.07079 7.42865C8.93862 8.29648 8.93862 9.70352 8.07079 10.5713L2.92462 15.7175C2.72936 15.9128 2.41278 15.9128 2.21751 15.7175L1.35327 14.8533C1.15801 14.658 1.15801 14.3414 1.35327 14.1462L6.49944 9L1.35327 3.85383C1.15801 3.65857 1.15801 3.34199 1.35327 3.14673L2.21751 2.28249Z' fill='%230A9775'/%3E%3C/svg%3E%0A");
  }
  :where(main > ul:not([class])) li li::marker {
    content: url("data:image/svg+xml,%3Csvg width='10' height='16' viewBox='0 0 10 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-opacity='0.5' fill-rule='evenodd' clip-rule='evenodd' d='M2.21751 2.28249C2.41278 2.08722 2.72936 2.08722 2.92462 2.28249L8.07079 7.42865C8.93862 8.29648 8.93862 9.70352 8.07079 10.5713L2.92462 15.7175C2.72936 15.9128 2.41278 15.9128 2.21751 15.7175L1.35327 14.8533C1.15801 14.658 1.15801 14.3414 1.35327 14.1462L6.49944 9L1.35327 3.85383C1.15801 3.65857 1.15801 3.34199 1.35327 3.14673L2.21751 2.28249Z' fill='%230A9775'/%3E%3C/svg%3E%0A");
  }
  :where(a):where([href]):where(:visited) {
    text-decoration-color: var(--brand-color);
  }
  h1 {
    margin-block: 1em 0;
    color: var(--brand);
    line-height: 1.5;
    font-weight: 400;
  }
  h1 span {
    display: block;
    font-size: 2rem;
    font-weight: 300;
  }
  h2 {
    font-size: var(--font-size-5);
    font-weight: 400;
  }
  h3 {
    font-size: var(--font-size-4);
    font-weight: 400;
  }
  .align-center {
    text-align: center;
  }
  @view-transition {
    navigation: auto;
    types: slide, forwards;
  }
  body {
    display: flex;
    flex-direction: column;
    margin-inline: auto;
    overflow-x: hidden;
  }
  .main {
    flex: 1;
    display: flex;
    flex-direction: column;
    width: min(100%, 800px);
    margin-inline: auto;
    padding-inline: var(--size-3);
    padding-block-end: var(--size-8);
  }
  .main:not(:has(.hero)) {
    padding-block-start: var(--header-height, 56px);
  }
  .fullwidth {
    position: relative;
    left: 50%;
    width: 100vw;
    translate: -50% 0;
  }
  .background-logo-wrapper {
    position: absolute;
    z-index: -1;
    inset: 0;
    max-width: 100vw;
    max-height: 100vh;
    overflow: hidden;
  }
  .background-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 100vmin;
    aspect-ratio: 1;
  }
  .background-logo-line {
    stroke: #098567;
    stroke-width: 0.1px;
  }
  .table-scroller {
    overflow-x: auto;
  }
  .table-scroller table {
    margin-inline: auto;
  }
  .header {
    position: fixed;
    z-index: 2;
    inset: 0 0 auto 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-inline: auto;
    box-shadow: var(--shadow-3);
    background-color: var(--header-background);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: var(--brand);
  }
  .logo {
    display: flex;
    align-items: center;
    gap: var(--size-3);
    margin: 0;
    padding: 0;
    flex-shrink: 0;
    color: var(--black);
  }
  .logo svg {
    width: 64px;
    height: 64px;
  }
  .logo p {
    margin: 0;
    line-height: 1;
  }
  .logo p b {
    display: block;
  }
  nav {
    display: flex;
    align-items: stretch;
    gap: var(--size-2);
    font-size: var(--font-size-3);
  }
  @media (width < 1280px) {
    nav {
      font-size: var(--font-size-2);
    }
  }
  nav .nav-toggle {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin: 10px;
    padding: 0;
    border: 0;
    border-radius: var(--size-1);
    background-color: transparent;
    color: var(--brand);
  }
  .nav-open nav .nav-toggle {
    background-color: var(--brand);
    color: white;
  }
  @media (width >= 1024px) {
    nav .nav-toggle {
      display: none;
    }
  }
  nav .nav-toggle svg rect {
    transform-box: fill-box;
    transform-origin: center;
    transition: rotate 0.2s var(--ease-elastic-1), translate 0.2s 0.2s, opacity 0.2s 0.2s;
  }
  .nav-open nav .nav-toggle svg rect {
    transition: opacity 0.2s, translate 0.2s, rotate 0.2s 0.2s var(--ease-elastic-1);
  }
  .nav-open nav .nav-toggle svg rect:nth-child(1) {
    translate: 0 7px;
    rotate: 45deg;
  }
  .nav-open nav .nav-toggle svg rect:nth-child(2) {
    opacity: 0;
  }
  .nav-open nav .nav-toggle svg rect:nth-child(3) {
    translate: 0 -7px;
    rotate: -45deg;
  }
  nav ul {
    display: flex;
    gap: var(--size-2);
    padding: 0 var(--size-4) 0 0;
    font-size: inherit;
    list-style: none;
  }
  @media (width < 1024px) {
    nav ul {
      position: fixed;
      inset: var(--header-height, 64px) 0 0 0;
      flex-direction: column;
      gap: var(--size-5);
      width: 100vw;
      height: calc(100dvh - var(--header-height, 56px));
      padding: var(--size-5) var(--size-5) calc(var(--header-height, 56px) + var(--size-5)) var(--size-5);
      background-color: var(--surface-1);
      text-align: center;
      translate: 100% 0;
      transition: translate 0.3s ease-in-out;
      font-size: var(--font-size-4);
    }
    nav ul li {
      max-inline-size: none;
      padding: 0;
    }
    nav ul li:first-child {
      margin-top: auto;
    }
    nav ul li:last-child {
      margin-bottom: auto;
    }
    nav ul a {
      display: flex;
      width: 100%;
    }
    .nav-open nav ul {
      translate: 0 0;
    }
  }
  nav li {
    display: flex;
    padding: 0;
  }
  nav a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: var(--size-2) var(--size-3);
    border-radius: var(--size-1);
    text-decoration: none;
    text-align: center;
  }
  @media (prefers-color-scheme: dark) {
    nav a {
      color: var(--brand-on-dim);
    }
  }
  nav a:hover, nav a:focus {
    background-color: var(--brand);
    color: white;
  }
  nav a[aria-current=page] {
    background-color: var(--brand);
    color: white;
  }
  .hero {
    position: relative;
    left: 50%;
    translate: -50% 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    width: 100vw;
    text-align: center;
  }
  @media (min-aspect-ratio: 1/1) {
    .hero {
      height: 100dvh;
    }
  }
  .hero picture {
    flex: 1;
    width: 100vw;
    overflow: hidden;
  }
  .hero img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  @media (width < 500px) {
    .hero img {
      margin-top: 64px;
    }
  }
  .hero h1 {
    max-inline-size: none;
    margin: 0;
    padding: 0.5em;
  }
  .swiper {
    --swiper-theme-color: var(--brand-color);
    position: relative;
    left: 50%;
    translate: -50% 0;
    z-index: 1;
    width: 100vw;
    height: 80dvh;
    margin-top: var(--size-10);
  }
  .swiper figure {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .swiper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .swiper figcaption {
    position: absolute;
    inset: auto 0 32px 0;
    display: grid;
    place-items: center;
    max-inline-size: none;
    padding-inline: 1em;
    text-align: center;
  }
  .swiper figcaption p {
    line-height: 1.7;
  }
  .swiper figcaption span {
    padding: 0.5rem;
    border-radius: var(--radius-2);
    background-color: #fff;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
  }
  .swiper-slide-active figcaption {
    animation: caption 0.4s ease-out forwards;
  }
  @keyframes caption {
    0% {
      translate: 0 200%;
      opacity: 0;
    }
    100% {
      translate: 0 0;
      opacity: 1;
    }
  }
  .footer {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--size-3);
    background-color: var(--gray-8);
    color: var(--gray-1);
  }
  @media (width < 600px) {
    .footer {
      flex-direction: column;
      align-items: center;
      gap: var(--size-3);
      padding: var(--size-5) var(--size-3);
    }
  }
  .footer::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 50%;
    translate: -50% 0;
    display: block;
    width: 100vw;
    background-color: var(--gray-8);
  }
  .footer p {
    margin: 0;
  }
  .footer ul {
    display: flex;
    justify-content: flex-end;
    gap: var(--size-3);
    padding: 0;
    list-style: none;
  }
  .footer li {
    padding: 0;
  }
  .footer a {
    color: var(--brand-on-dim);
  }
  .online-termin-show-button {
    padding: var(--size-2) var(--size-3);
    border-radius: var(--size-1);
    background-color: #0ca1c6;
    color: #fff;
  }
  @media (width < 1024px) {
    .online-termin-show-button {
      position: absolute;
      top: 10px;
      right: 60px;
      height: 44px;
    }
  }
  @media (width < 450px) {
    .online-termin-show-button {
      padding: var(--size-2);
      font-size: var(--font-size-1);
    }
  }
  @media (width < 414px) {
    .online-termin-show-button {
      padding: 0 var(--size-2);
      font-size: 0.9rem;
    }
    .online-termin-show-button span {
      display: block;
    }
    .online-termin-show-button > span:nth-child(2) {
      display: none;
    }
  }
  .online-termin-show-button:hover, .online-termin-show-button:focus {
    background-color: rgba(12, 161, 198, 0.7333333333);
  }
  .online-termin-dialog {
    padding: 8px;
    background-color: #fff;
  }
  .online-termin-dialog iframe {
    width: 320px;
    height: 600px;
  }
  .online-termin-close-button {
    position: absolute;
    top: 0;
    right: 0;
    display: grid;
    place-items: center;
    width: 48px;
    aspect-ratio: 1;
    padding: 0;
    background-color: #fff;
    color: #0ca1c6;
    font-weight: bold;
    font-size: 20px;
  }
  .online-termin-close-button:hover, .online-termin-close-button:focus {
    background-color: #0ca1c6;
    color: #fff;
  }
  .quote {
    margin-block-end: 4rem;
  }
  .quote blockquote {
    isolation: isolate;
    position: relative;
    padding: 0;
    margin-inline: 2em;
    border: none;
    text-align: center;
  }
  .quote blockquote p {
    font-size: 1.8rem;
  }
  .quote blockquote p:first-child {
    margin-block-start: 0;
    isolation: isolate;
  }
  .quote blockquote p:first-child::before {
    content: "„";
    position: absolute;
    z-index: -1;
    top: -10rem;
    left: 0;
    right: 0;
    color: var(--brand-color);
    font-size: 40rem;
    font-family: "Georgia", serif;
    line-height: 0.5rem;
    opacity: 0.2;
    filter: blur(0.5rem);
  }
  .quote blockquote p:last-child {
    margin-block-end: 0;
  }
  .hint {
    padding: var(--size-3) var(--size-5);
    background-color: var(--brand-color);
    box-shadow: 8px 8px 0 var(--gray-8);
    color: #fff;
  }
  .hint:is(div) {
    margin-bottom: var(--size-8);
  }
  .hint:is(dialog) {
    position: fixed;
    z-index: 9;
    inset: 0;
    width: min(40rem, 100%);
    border-radius: 0;
  }
  .hint:is(dialog) p {
    text-wrap: balance;
  }
  .hint :where(h2, h3) {
    color: inherit;
    font-weight: 700;
  }
  .hint a {
    color: inherit;
    text-decoration: underline;
  }
  .hint-close-button {
    position: absolute;
    top: 8px;
    right: 8px;
    display: grid;
    place-items: center;
    width: 48px;
    aspect-ratio: 1;
    padding: 0;
    border: 1px solid #fff;
    border-radius: 100%;
    background-color: transparent;
    color: #fff;
  }
  .hint-close-button:hover, .hint-close-button:focus {
    background-color: #fff;
    color: var(--brand-color);
  }
  .hint-close-button svg {
    width: 32px;
    height: 32px;
  }
  .map {
    margin-block: var(--size-10) calc(var(--size-5) * -1);
  }
  table {
    border-collapse: collapse;
  }
  table thead {
    background-color: var(--brand);
    color: white;
  }
  table tbody tr:nth-child(odd) {
    background-color: var(--surface-2);
  }
  table tbody tr:nth-child(even) {
    background-color: var(--surface-3);
  }
  table :where(th, td) {
    padding: var(--size-3);
    border: 1px solid var(--surface-4);
    text-align: center;
  }
  @media (width < 400px) {
    table :where(th, td) {
      padding-inline: var(--size-2);
    }
  }
  @media (width < 500px) {
    table th span {
      display: none;
    }
  }
  .spinner {
    display: none;
  }
  .main.team.loading .spinner {
    display: block;
  }
  .main.team.loading .spinner ~ * {
    display: none;
  }
  :is(.team-doctors, .team-members) {
    display: grid;
    gap: var(--size-4);
    margin: var(--size-5) 0;
    padding: 0;
    list-style: none;
  }
  :is(.team-doctors, .team-members) li {
    padding: 0;
  }
  :is(.team-doctors, .team-members) img {
    transition: box-shadow 0.4s ease-in-out, scale 0.2s ease-in-out;
    transform-origin: bottom center;
  }
  :is(.team-doctors, .team-members) figcaption {
    transition: scale 0.2s ease-in-out;
    transform-origin: top center;
  }
  :is(.team-doctors, .team-members) figcaption p {
    margin: 0;
  }
  :is(.team-doctors, .team-members) a {
    display: block;
    text-decoration: none;
    transition: translate 0.2s ease-in-out;
  }
  :is(.team-doctors, .team-members) a:hover, :is(.team-doctors, .team-members) a:focus {
    translate: 0 -4px;
  }
  :is(.team-doctors, .team-members) a:hover img, :is(.team-doctors, .team-members) a:focus img {
    box-shadow: var(--shadow-4);
    scale: 1.05;
  }
  :is(.team-doctors, .team-members) a:hover figcaption, :is(.team-doctors, .team-members) a:focus figcaption {
    scale: 1.2;
  }
  :is(.team-doctors, .team-members) img {
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: var(--size-5);
  }
  @media (width > 500px) {
    .team-doctors {
      grid-template-columns: repeat(2, 1fr);
    }
    .team-members {
      grid-template-columns: repeat(3, 1fr);
    }
  }
  @media (width < 500px) {
    .team-doctors img {
      aspect-ratio: 1;
      object-fit: cover;
    }
    .team-members img {
      aspect-ratio: 3/2;
      object-fit: cover;
    }
  }
  .team-dcotor img {
    width: min(300px, 50vw);
    height: auto;
    float: left;
    margin-right: 16px;
    border-radius: var(--size-5);
  }
  .faq {
    display: flex;
    flex-direction: column;
    gap: var(--size-3);
  }
  details {
    outline-offset: -2px;
  }
  details summary {
    display: block;
    list-style: none;
    font-weight: 400;
  }
  details summary::-webkit-details-marker {
    display: none;
  }
  details summary span {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5em;
    max-inline-size: unset;
    color: inherit;
    font-size: var(--font-size-3);
  }
  details summary span::after {
    content: "+";
    flex-shrink: 0;
    display: grid;
    place-items: center;
    width: 1em;
    height: 0.65em;
    font-size: var(--font-size-5);
    line-height: 0;
    font-weight: 300;
  }
  details summary:hover, details summary:focus {
    background-color: var(--brand);
    color: white;
  }
  details[open] {
    outline: 2px solid var(--brand);
  }
  details[open] span::after {
    content: "−";
  }
  details .content > :first-child {
    margin-top: 0;
  }
  details .content > :last-child {
    margin-bottom: 0;
  }
  html {
    --brand-light: var(--orange-6);
    --text-1-light: var(--gray-8);
    --text-2-light: var(--gray-7);
    --surface-1-light: var(--gray-2);
    --surface-2-light: var(--gray-0);
    --surface-3-light: var(--gray-1);
    --surface-4-light: var(--gray-3);
  }
  html {
    --brand-dim: var(--orange-4);
    --text-1-dim: var(--gray-3);
    --text-2-dim: var(--gray-4);
    --surface-1-dim: var(--gray-8);
    --surface-2-dim: var(--gray-7);
    --surface-3-dim: var(--gray-6);
    --surface-4-dim: var(--gray-5);
  }
  h1 {
    font-size: var(--font-size-fluid-3);
  }
}
@keyframes spinner {
  to {
    transform: rotate(360deg);
  }
}
.spinner:before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid var(--gray-3);
  border-top-color: var(--brand-color);
  animation: spinner 0.6s linear infinite;
}
