/* --------------------------
Betalink CSS
Copyright, Frank Van Laere
-------------------------- */

:root {
	--background: 145 25% 8%;
	--foreground: 0 0% 98%;
	--card: 145 20% 12%;
	--card-foreground: 0 0% 98%;
	--popover: 145 20% 12%;
	--popover-foreground: 0 0% 98%;
	--primary: 145 70% 35%;
	--primary-foreground: 0 0% 100%;
	--secondary: 60 10% 90%;
	--secondary-foreground: 145 25% 8%;
	--muted: 145 15% 18%;
	--muted-foreground: 145 10% 60%;
	--accent: 45 90% 55%;
	--accent-foreground: 145 25% 8%;
	--destructive: 0 84% 60%;
	--destructive-foreground: 0 0% 98%;
	--border: 145 15% 20%;
	--input: 145 15% 20%;
	--ring: 145 70% 35%;
	--radius: .75rem;
	--gradient-pitch: linear-gradient(135deg, hsl(145 70% 30%) 0%, hsl(145 50% 20%) 100%);
	--gradient-gold: linear-gradient(135deg, hsl(45 90% 55%) 0%, hsl(35 85% 45%) 100%);
	--gradient-hero: linear-gradient(180deg, hsl(145 25% 8%) 0%, hsl(145 30% 12%) 50%, hsl(145 25% 8%) 100%);
	--shadow-card: 0 4px 24px -4px hsla(145, 70%, 35%, .15);
	--shadow-glow: 0 0 40px hsla(145, 70%, 35%, .3);
	--sidebar-background: 145 20% 10%;
	--sidebar-foreground: 0 0% 98%;
	--sidebar-primary: 145 70% 35%;
	--sidebar-primary-foreground: 0 0% 100%;
	--sidebar-accent: 145 15% 18%;
	--sidebar-accent-foreground: 0 0% 98%;
	--sidebar-border: 145 15% 20%;
	--sidebar-ring: 145 70% 35%;

	--tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
    --tw-contain-size: ;
    --tw-contain-layout: ;
    --tw-contain-paint: ;
    --tw-contain-style: ;
}

*, *:before, *:after {
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box;

	-webkit-font-smoothing:antialiased;

	margin: 0;
	padding: 0;
}

html, body {
	min-height: 100%;
	background-color: rgb(15, 26, 20);
	font-family: "Inter", sans-serif;
	/*font-size: 15px;*/
	line-height: 24px;
	color: rgb(250, 250, 250);
	-webkit-text-size-adjust: 100%;
	-moz-tab-size: 4;
	tab-size: 4;
	font-feature-settings: normal;
	font-variation-settings: normal;
	-webkit-tap-highlight-color: transparent;
}

body {
	margin: 0;
	line-height: inherit;
}

hr {
	height: 0;
	color: inherit;
	border-top-width: 1px;
}

abbr:where([title]) {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}

h1, h2, h3, h4, h5, h6 {
	font-family: Bebas Neue, sans-serif;
	letter-spacing: .02em;
	font-size: inherit;
	font-weight: inherit;
}

a {
	color: inherit;
	text-decoration: inherit;
}
a, button, .button {
	/*transition: all 0.5s ease;*/

	transition-duration: 300ms;
	transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

b, strong {
	font-weight: bolder;
}

nav {
	width: 100%;
	height: 65px;
	position: sticky;
	top: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	
	background-color: rgba(15, 26, 20, 0.8);
	backdrop-filter: blur(16px);
	padding-left: 1rem;
    padding-right: 1rem;
	border-bottom: 1px solid rgb(43, 59, 50);
}
.nav_logo {
	display: flex;
	align-items: center;
	font-family: "Bebas Neue", sans-serif;
	height: 4rem;
	font-size: 1.5rem;
    line-height: 2rem;
	text-align: left;
	text-transform: uppercase;
}
.nav_logo a {
	color: rgb(250, 250, 250);
	text-decoration: none;
}
.nav_links {
	text-align: center;
	color: rgb(250, 250, 250);
	height: 4rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.nav_links a {
	color: rgb(143, 163, 151);
	text-decoration: none;
	padding: 0px 15px;
}
.nav_links a:hover {
	color: rgb(250, 250, 250);
}
.nav_account {
	text-align: right;
	height: 4rem;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.nav_account a {
	margin-left: 15px;
}

section {
	width: 100%;
}

ol, ul, menu {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.container {
	width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 2rem;
    padding-left: 2rem;
}
@media (min-width: 1400px) {
    .container {
        max-width: 1400px;
    }
}

.index-intro {
	font-family: "Bebas Neue", sans-serif;
	color: rgb(250, 250, 250);
	font-size: 6rem;
	line-height: 1;
}
@media (max-width: 900px) {
    .index-intro {
        font-size: 4.5rem;
    }
}
.index-intro-button-primary {
	background-image: linear-gradient(135deg, rgba(23, 130, 68, 1) 0%, rgba(26, 77, 47, 1) 100%);
}
.index-intro-button-primary:hover {
	background-image: linear-gradient(135deg, rgba(23, 130, 68, 0.8) 0%, rgba(26, 77, 47, 0.8) 100%);
}

.job_card {
	position: relative;
	background-color: hsl(var(--card));
	padding: 1.5rem;
	border: 1px solid hsl(var(--border));
	border-radius: 0.75rem;
}
.job_card:hover {
	border-color: hsl(var(--primary) / 0.5);
}
.job_card:hover h3 {
	color: hsl(var(--primary));
}
.job_card_featured {
	background: var(--gradient-pitch);
}
.job_card_property {
	display: inline-flex;
	align-items: center;
	background-color: hsl(var(--secondary));
	color: hsl(var(--secondary-foreground));
	font-weight: 600;
	font-size: 0.75rem;
    line-height: 1rem;
	padding-top: 0.125rem;
    padding-bottom: 0.125rem;
	padding-left: 0.625rem;
    padding-right: 0.625rem;
	border-radius: 9999px;
}

.featured_label {
	position: absolute;
	display: inline-flex;
	align-items: center;
	background-color: hsl(var(--accent));
	color: hsl(var(--accent-foreground));
	font-size: 0.75rem;
	font-weight: 600;
    line-height: 1rem;
	padding-top: 0.125rem;
    padding-bottom: 0.125rem;
	padding-left: 0.625rem;
    padding-right: 0.625rem;
	border-radius: 9999px;
	right: 1rem;
	top: -0.5rem;
}

/*Tooltip*/
[tooltip] {
	position: relative; /* opinion 1 */
}

[tooltip]::before,
[tooltip]::after {
	text-transform: none; /* opinion 2 */
	font-size: .9em; /* opinion 3 */
	font-weight: normal;
	line-height: 1;
	user-select: none;
	pointer-events: none;
	position: absolute;
	display: none;
	opacity: 0;
}
[tooltip]::before {
	content: '';
	border: 5px solid transparent; /* opinion 4 */
	z-index: 1001; /* absurdity 1 */
}
[tooltip]::after {
	content: attr(tooltip); /* magic! */

	/*font-family: Helvetica, sans-serif;*/
	font-family: 'Open Sans', sans-serif;
	text-align: center;

	min-width: 3em;
	max-width: 21em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 1ch 1.5ch;
	border-radius: .3ch;
	box-shadow: 0 1em 2em -.5em rgba(0, 0, 0, 0.35);
	background: rgba(51, 51, 51, 0.95);
	color: #fff;
	z-index: 1000; 
}

[tooltip]:hover::before,
[tooltip]:hover::after {
	display: block;
}

[tooltip='']::before,
[tooltip='']::after {
	display: none !important;
}

/* FLOW: UP */
[tooltip]:not([flow])::before,
[tooltip][flow^="up"]::before {
	bottom: 100%;
	border-bottom-width: 0;
	border-top-color: #333;
}
[tooltip]:not([flow])::after,
[tooltip][flow^="up"]::after {
	bottom: calc(100% + 5px);
}
[tooltip]:not([flow])::before,
[tooltip]:not([flow])::after,
[tooltip][flow^="up"]::before,
[tooltip][flow^="up"]::after {
	left: 50%;
	transform: translate(-50%, -.5em);
}

/* FLOW: DOWN */
[tooltip][flow^="down"]::before {
	top: 100%;
	border-top-width: 0;
	border-bottom-color: #333;
}
[tooltip][flow^="down"]::after {
	top: calc(100% + 5px);
}
[tooltip][flow^="down"]::before,
[tooltip][flow^="down"]::after {
	left: 50%;
	transform: translate(-50%, .5em);
}

/* FLOW: LEFT */
[tooltip][flow^="left"]::before {
	top: 50%;
	border-right-width: 0;
	border-left-color: #333;
	left: calc(0em - 5px);
	transform: translate(-.5em, -50%);
}
[tooltip][flow^="left"]::after {
	top: 50%;
	right: calc(100% + 5px);
	transform: translate(-.5em, -50%);
}

/* FLOW: RIGHT */
[tooltip][flow^="right"]::before {
	top: 50%;
	border-left-width: 0;
	border-right-color: #333;
	right: calc(0em - 5px);
	transform: translate(.5em, -50%);
}
[tooltip][flow^="right"]::after {
	top: 50%;
	left: calc(100% + 5px);
	transform: translate(.5em, -50%);
}

@keyframes tooltips-vert {
	to {
		opacity: 1;
		transform: translate(-50%, 0);
	}
}

@keyframes tooltips-horz {
	to {
		opacity: 1;
		transform: translate(0, -50%);
	}
}

[tooltip]:not([flow]):hover::before,
[tooltip]:not([flow]):hover::after,
[tooltip][flow^="up"]:hover::before,
[tooltip][flow^="up"]:hover::after,
[tooltip][flow^="down"]:hover::before,
[tooltip][flow^="down"]:hover::after {
	animation: tooltips-vert 300ms ease-out forwards;
}

[tooltip][flow^="left"]:hover::before,
[tooltip][flow^="left"]:hover::after,
[tooltip][flow^="right"]:hover::before,
[tooltip][flow^="right"]:hover::after {
	animation: tooltips-horz 300ms ease-out forwards;
}
/*Tooltip end*/

.label {
	display: inline-block;
	text-align: center;
	
	color: #FFFFFF;
	min-width: 30px;
	line-height: 20px;
	margin: 1px;
	padding: 0px 4px 0px 4px;
	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.label_green { background: #38A507;}
.label_red { background: #E2331C;}
.label_purple { background: #BF00BF;}
.label_gold { background: #FFB600;}
.label_silver { background: #C0C0C0;}
.label_bronze { background: #CD7F32;}

/*Popup*/
.overlay {
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.7);
	transition: opacity 500ms;
	visibility: hidden;
	opacity: 0;
}
.overlay_show {
	display: initial;
	visibility: visible;
	opacity: 1;
}

.popup {
	position: relative;
	height: 75vh;
	width: 45%;
	margin: 70px auto;
	padding: 20px;
	background: #ffffff;
	overflow: auto;
	border-radius: 7px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
	transition: all .5s ease-in-out;
}
.popup_login {
	/*width: 60%;*/
}
@media screen and (max-width: 900px){ 
	.popup {
		width: 75%;
	}
}
@media screen and (max-width: 700px){
	.popup {
		width: 95%;
	}
}

.popup .popup_close {
	position: absolute;
	top: 5px;
	right: 15px;
	transition: all 200ms;
	font-size: 30px;
	font-weight: bold;
	text-decoration: none;
	color: #333;
	cursor: pointer;
}
.popup .popup_close:hover {
	color: rgba(255, 216, 0, 1);
}
.popup .popup_content {
	max-height: 90vh;
	overflow: auto;
}
@media screen and (max-width: 500px){ .popup .form_input {
	max-width: 170px;
}}

.popup_opened {
	/*-webkit-filter: blur(.25em);
    filter: blur(.25em);*/
}
.no_scroll {
	/*overflow-y: hidden;*/
}
/*Popup end*/

.shadow {
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 1);
}

.glass:before {
	z-index: -1;
	
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-o-filter: blur(5px);
	-ms-filter: blur(5px);
	filter: blur(5px);
}
.glass {
	z-index: 0;
}

.pitch-lines {
    background-image: linear-gradient(90deg, hsla(0, 0%, 100%, 0.03) 1px, transparent 1px), linear-gradient(hsla(0, 0%, 100%, 0.03) 1px, transparent 1px);
    background-size: 60px 60px;
}

input, textarea, select, button {
    text-rendering: auto;
    color: initial;
    letter-spacing: normal;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    display: inline-block;
    text-align: start;
    margin: 0em;
    font: 400 13.3333px Arial;
}

input {
    -webkit-appearance: textfield;
    background-color: white;
    -webkit-rtl-ordering: logical;
    cursor: text;
    padding: 1px;
    border-width: 2px;
    border-style: inset;
    border-color: initial;
    border-image: initial;
}
input[type=checkbox] {
	cursor: pointer;
	-webkit-appearance: checkbox;
}
input {
	border-radius: 0;
}
button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}
button, input {
    overflow: visible;
}

hr {
	border: 0;
	border-top: 1px solid #dce0e0;
	margin-top: 20px;
	margin-bottom: 20px;
}

.feedback {
	position: absolute;
	top: 0;
	right: 15px;
	width: 275px;
	margin-top: 50px;
	margin-bottom: 50px;
}

.feedback_error {
	display: inline-block;
	width: 100%;
	background: #CA2112;
	color: #FFFFFF;
	margin-bottom: 10px;
	padding: 15px;
	
	-webkit-box-shadow: 0 15px 35px rgba(50,50,93,.1), 0 5px 15px rgba(0,0,0,.07);
	box-shadow: 0 15px 35px rgba(50,50,93,.1), 0 5px 15px rgba(0,0,0,.07);
	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.feedback_error a:link { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_error a:visited { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_error a:hover { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.feedback_error a:active { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.feedback_warning {
	display: inline-block;
	width: 100%;
	background: #FFCC5E;
	color: #AF7B00;
	padding: 15px;
	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.feedback_warning a:link { color: #AF7B00; text-decoration: none; border-bottom:none;}
.feedback_warning a:visited { color: #AF7B00; text-decoration: none; border-bottom:none;}
.feedback_warning a:hover { color: #AF7B00; text-decoration: none; border-bottom:1px dotted #AF7B00;}
.feedback_warning a:active { color: #AF7B00; text-decoration: none; border-bottom:1px dotted #AF7B00;}
.feedback_success {
	display: inline-block;
	width: 100%;
	background: #390;
	color: #FFFFFF;
	padding: 15px;
	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.feedback_success a:link { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_success a:visited { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_success a:hover { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.feedback_success a:active { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.feedback_information {
	display: inline-block;
	width: 100%;
	background: #57a6f6;
	color: #FFFFFF;
	padding: 15px;
	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.feedback_information a:link { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_information a:visited { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.feedback_information a:hover { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.feedback_information a:active { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}

.feedback_popup {
	display: inline-flex;
}

.color_gray { color: #999999;}

.radio_container {
    box-sizing: border-box;
    display: flex;
    flex-flow: row nowrap;
    justify-content: left;
    align-items: stretch;
}
.radio_container input[type="radio"]:checked+label {
	color: #FFFFFF;
	background-color: #5B3A99;
}
.radio_container input[type="radio"] {
	display: none;
}
.radio_container label:hover {
	color: #FFFFFF;
	background-color: #7047BB;
}
.radio_container label:first-of-type {
	border-radius: 6px 0 0 6px;
}
.radio_container label:last-of-type {
	border-radius: 0 6px 6px 0;
	border-right: none;
}
.radio_button {
	margin: 0;
    padding: 8px 20px;
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    border-right: solid 1px #DDD;
    background-color: #FFFFFF;
    line-height: 140%;
    text-align: center;
    box-shadow: 0px 0px 4px 1px rgba(0,0,0,0.08);
	cursor: pointer;
}

.form_cell {
	padding: 5px;
}

.form_checkbox_input {
	height: 0;
	width: 0;
	visibility: hidden;
}
.form_checkbox_label {
	cursor: pointer;
	text-indent: -9999px;
	width: 60px;
	height: 36px;
	background: grey;
	display: block;
	border-radius: 36px;
	position: relative;
}
.form_checkbox_label:after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 30px;
	height: 30px;
	background: #fff;
	border-radius: 30px;
	transition: 0.3s;
}
.form_checkbox_input:checked + .form_checkbox_label {
	background: #5CB85C;
}
.form_checkbox_input:checked + .form_checkbox_label:after {
	left: calc(100% - 3px);
	transform: translateX(-100%);
}
.form_checkbox_label:active:after {
	width: 43px;
}

.form_label {
	line-height: 35px;
}
.form_label_homepage {
	flex: 1 0 100px;
	flex-grow: 0;
}
@media screen and (max-width: 1000px) { .form_label_homepage {
	flex: 1 0 80px;
	flex-grow: 0;
}}

#panel_email {
	margin-top: -10px;
}
@media screen and (max-width: 713px) { #panel_email {
	margin-top: 0px;
}}

#request_email {
	width: 60%;
}
@media screen and (max-width: 650px) { #request_email {
	width: 90%;
}}

#form_label_homepage_email {
	line-height: 60px;
}
@media screen and (max-width: 713px) { #form_label_homepage_email {
	line-height: 40px;
}}
@media screen and (max-width: 636px) { #form_label_homepage_email {
	line-height: 60px;
}}
@media screen and (max-width: 500px) { #form_label_homepage_email {
	line-height: 35px;
}}

.form_input {
	font-family: FontAwesome, "Open Sans", Verdana, sans-serif;
	padding: .375rem .75rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #495057;
	background-color: #FFFFFF;
	background-clip: padding-box;
	border: 1px solid #CED4DA;
	border-radius: .25rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.form_input:focus {   
    border-color: rgba(255, 216, 0, 1);
    outline: 0 none;
}
@media screen and (max-width: 960px) { .form_input {
	
}}

.sign_in_email_container_pane .form_input {
	width: 90%;
}

.form_input_multiple {
	height: auto;
	width: auto;
}
@media screen and (max-width: 800px) { .form_input_multiple {
	width: 250px;
}}
.form_input_select {
	height: 36px;
}

.form_button {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: bold;
	height: 40px;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 10px;
	margin-bottom: 10px;
	border: none;
	border-bottom: 2px solid #E5BF00;
	background-color: #FFD800;
	cursor: pointer;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.form_button:hover {
	background-color: #FFE205;
}
@media screen and (max-width: 960px) { .form_button {
	
}}
.form_button_shadow {
	-webkit-box-shadow: 0 15px 35px rgba(50,50,93,.1), 0 5px 15px rgba(0,0,0,.35);
	box-shadow: 0 15px 35px rgba(50,50,93,.1), 0 5px 15px rgba(0,0,0,.35);
}
.form_button_open {
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
}
.form_button_open:hover {
	background-color: #FFFFFF;
	border: 1px solid #FFE205;
}
.form_button_black {
	color: #FFFFFF;
	border: solid 1px #000000;
	background-color: #000000;
}
.form_button_red {
	color: #FFFFFF;
	border: solid 1px #A02112;
	background-color: #A02112;
}
.form_button_green {
	color: #FFFFFF;
	border: solid 1px #339900;
	background-color: #339900;
	border-bottom: 2px solid #2C7F00;
}
.form_button_green:hover {
	background-color: #3AA500;
}

.form_button-1 {
	line-height: 12px;
}

.button {
	display: flex;
	align-items: center;
	justify-content: center;
	appearance: button;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	height: 40px;
	line-height: 20px;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 8px;
	padding-bottom: 8px;
	margin: 0px;
	border: none;
	color: rgb(255, 255, 255);
	background-color: rgb(27, 152, 79);
	cursor: pointer;
	text-decoration: none;

	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
}
.button:hover {
	background-color: rgba(27, 152, 79, 0.9);
}
.button_icon_arrow {
	display: inline-block;
	transform: translateX(0);
	transition: transform 150ms ease-out;
}
.button:hover .button_icon_arrow {
	transform: translateX(5px);
}

.button_white {
	display: inline-flex;
	color: hsl(var(--secondary-foreground));
	background-color: rgb(232, 232, 227);
	border: 1px solid rgb(232, 232, 227);
}
.button_white:hover {
	background-color: hsl(var(--secondary) / .8);
}

.button_open {
	background-color: transparent;
	color: rgb(27, 152, 79);
	border: 2px solid rgb(27, 152, 79);
}
.button_open:hover {
	background-color: rgb(27, 152, 79);
	color: rgb(255, 255, 255);
}

.button_open_white {
	color: rgb(232, 232, 227);
	border-color: rgb(232, 232, 227);
}
.button_open_white:hover {
	color: rgb(15, 26, 20);
	background-color: rgb(232, 232, 227);
}

.button_no_background {
	background-color: transparent;
}
.button_no_background:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

.button_category {
	display: inline-flex;
	height: 2.5rem;
	background-color: rgba(0, 0, 0, 0);
	color: rgb(250, 250, 250);
	font-weight: 600;
	font-size: 0.875rem;
    line-height: 1.25rem;
	padding-top: 0.5rem;
    padding-bottom: 0.5rem;
	padding-left: 1.25rem;
    padding-right: 1.25rem;
	border: 1px solid hsl(var(--border));
	border-radius: var(--radius);
	white-space: nowrap;
	justify-content: center;
    align-items: center;
}
.button_category:hover {
	color: hsl(var(--foreground));
	background-color: hsl(var(--muted));
	border-color: hsl(var(--primary));
}

.button_red {
	color: #FFFFFF;
	background-color: #A02112;
	border-bottom: 2px solid #77180E;
}
.button_red:hover {
	color: #FFFFFF;
	background-color: #B72616;
}
.button_red:active {
	color: #FFFFFF;
	background-color: #B72616;
}

.button_green {
	color: #FFFFFF;
	background-color:#339900;
	border-bottom: 2px solid #287200;
}
.button_green:hover {
	color:#FFFFFF;
	background-color:#33BE00;
}
.button_green:active {
	color:#FFFFFF;
	background-color:#339900;
}

.button_green_dark {
	color: #FFFFFF;
	background-color:#2A7200;
	border-bottom: 2px solid #1C4900;
}
.button_green_dark:hover {
	color:#FFFFFF;
	background-color:#338C00;
}
.button_green_dark:active {
	color:#FFFFFF;
	background-color:#2A7200;
}

.button_black {
	color: #FFFFFF;
	background-color:#333333;
	border-bottom: 2px solid #0C0C0C;
}
.button_black:hover {
	color:#FFFFFF;
	background-color:#333333;
}
.button_black:active {
	color:#FFFFFF;
	background-color:#000000;
}

.button_gold {
	color: #000000;
	background-color: #FFD800;
	border-bottom: 2px solid #E5BF00;
}
.button_gold:hover {
	color:#000000;
	background-color: #FFE205;
}
.button_gold:active {
	color:#000000;
	background-color: #FFE205;
}

.button_gold_dark {
	color: #FFFFFF;
	background-color: #FFB400;
	border-bottom: 2px solid #D89700;
}
.button_gold_dark:hover {
	color: #FFFFFF;
	background-color: #FFC83F;
}
.button_gold_dark:active {
	color: #FFFFFF;
	background-color: #FFC83F;
}

.button_secondary {
	display: inline-block;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: bold;
	color: #4C4C4C;
	height: 40px;
	line-height: 38px;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 10px;
	margin-bottom: 10px;
	border: none;
	cursor: pointer;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.button_secondary:hover {
	color: #262626;
}

.button_xl {
	padding: 10px;
    padding-left: 16px;
    padding-right: 16px;
    margin: 6px;
	font-size: 1.1em;
}

.highlight {
	color: #FFFFFF;
	padding: 1px 5px 1px 5px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.highlight_large {
	padding: 3px 8px 3px 8px;
}
.highlight_green { background: #349600;} /*#38A507*/
.highlight_red { background: #E2331C;}
.highlight_orange { background: #FFD800; color: #3F3F3F;}

.share_social {
	width: 30px;
	height: 30px;
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.share_social:hover {
	opacity: 0.8;
}
.share_social_link {
	display: inline-flex;
	width: 160px;
	height: auto;
	padding: 5px;
	color: #495057;
	background-color: #FFFFFF;
	border: 1px solid #CED4DA;
	
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.panel {
	background-color: rgba(240,240,240,1);
	padding: 15px;
	margin: 10px;
	box-sizing: border-box;
	text-align: left;
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.panel h3 { color: #4C4C4C; padding-top: 0px; }
.panel_purple { background-color: rgba(91, 58, 153, 1); color: #FFFFFF; }
.panel_purple h3 { color: #FFFFFF; }
.panel_blue { background-color: rgba(217, 237, 247, 1); color: rgba(49, 112, 143, 1);}
.panel_green { background-color: rgba(223, 240, 216, 1); color: rgba(60, 118, 61, 1);}
.panel_red { background-color: rgba(242, 222, 222, 1); color: rgba(169, 68, 66, 1);}
.panel_yellow {background-color: rgba(252, 248, 227, 1); color: rgba(138, 109, 59, 1);}
.panel_gold { background-color: rgba(255, 215, 0, 1); color: #000000;}





.sign_in {
	display:none;
	background-color: #E5E5E5;
	color: #3F3F3F;
	padding: 20px;
}
@media screen and (max-width: 550px) { .sign_in {
	padding: 5px;
}}
@media screen and (max-width: 400px) { .sign_in {
	padding: 0px;
}}
.sign_in_email_container {
	display: flex;
	flex-wrap: wrap;
}
.sign_in_email_container_pane {
	flex: 1 0 300px;
	padding-right: 10px;
}
@media screen and (max-width: 400px) { .sign_in_email_container_pane {
	flex: 1 0 300px;
}}

.sign_in_social_google {
	flex: 1 0 150px;
	text-align: left;
	padding: 5px;
}
@media screen and (max-width: 550px) { .sign_in_social_google {
	flex: 1 0 300px;
	text-align: center;
}}
.sign_in_social_facebook {
	flex: 1 0 150px;
	text-align: right;
	padding: 5px;
}
@media screen and (max-width: 550px) { 
	.g-signin2{
		width: 100%;
	}

	.g-signin2 > div{
		margin: 0 auto;
	}
	.sign_in_social_facebook {
		flex: 1 0 300px;
		text-align: center;
	}
}

.form_row_left {
	float: left;
	width: 50%;
	text-align: right;
	padding: 3px;
	line-height: 2.5;
}
@media screen and (max-width: 550px) { .form_row_left {
	width: 25%;
}}
@media screen and (max-width: 400px) { .form_row_left {
	width: 100%;
	text-align: center;
}}
.form_row_right {
	float: left;
	width: 50%;
	text-align: left;
	padding: 3px;
}
@media screen and (max-width: 550px) { .form_row_right {
	width: 75%;
}}
@media screen and (max-width: 400px) { .form_row_right {
	width: 100%;
	text-align: center;
}}

.background_gray {
	background-color: #D8D8D8;
	box-shadow: inset 0px 10px 20px -10px #999999, inset 0px -10px 20px -10px #999999;
}
.background_gray_dark {
	background-color: #545454;
	box-shadow: inset 0px 10px 20px -10px #000000, inset 0px -10px 20px -10px #000000;
}
.background_green {
	background-color: #339900;
}
.background_red {
	background-color: rgba(160, 33, 18, 1);
}
.background_gold {
	background-color: #FFD800;
}

.member_photo {
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	border-radius: 100px;
}
.member_profile_container {
	display: flex;
	flex-wrap: wrap;
}
.member_profile_photo {
	flex: 1 0 300px;
}
@media screen and (max-width: 600px) { .member_profile_photo {
	text-align: center;
	margin-bottom: 20px;
}}
.member_profile_information {
	flex: 1 0 300px;
}

.terms {
	padding-bottom: 15px;
}

.box_white {
	background-color: #FEFEFE;
	border: solid 1px #DDDDDD;
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.box_gold {
	background-color: #FFD800;
	color: #000000;
	border: solid 1px #DDB800;
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.box_gray {
	background-color: #EFEFEF;
	border: solid 1px #CCCCCC;
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.box_green {
	background-color: #339900;
	color: #FFFFFF;
	border: solid 1px #297c00; /*TODO check correct distance*/
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.box_blue {
	background-color: #2196F3;
	color: #FFFFFF;
	border: solid 1px #1b82d3; /*TODO check correct distance*/
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.box_orange {
	background-color: #ff9800;
	color: #FFFFFF;
	border: solid 1px #ed8e00; /*TODO check correct distance*/
	padding: 10px;

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.disabled_look {
	opacity: 0.3;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
	user-select: none;
	cursor: default;
}

.table_header {
	background: #E7E7E7;
	color: #797979;
	padding: 3px;
}
.table_row {
	border-bottom: #DBDBDB 1px solid;
	padding: 3px;
}
.table_row:hover {
	background: #FFFFFF;
	color:#000000;
}
.table_row a:link { color: #3F3F3F; text-decoration: none; border-bottom:none;}
.table_row a:visited { color: #3F3F3F; }
.table_row a:hover { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}
.table_row a:active { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}
.table_row_no_link a:hover { text-decoration: none; border-bottom:none;}
.table_row_no_link a:active { text-decoration: none; border-bottom:none;}
.table_footer {
	background: #E7E7E7;
	color: #797979;
	padding: 3px;
}

.table_row {
	border-bottom: #DBDBDB 1px solid;
    padding: 3px;
}
.table_row :last-child {
	/*border-bottom: none;*/
}

.invisible {display: none;}
.hide {visibility: hidden;}
.show {visibility: visible;}

.text_black {color: #000000}
.text_white {color: #FFFFFF}
.text_gray {color: #999999}
.text_gray_dark {color: #666666}
.text_red {color: #FF0000}
.text_red_dark {color: #E83A2E}
.text_red_darker {color: #7F0000}
.text_blue {color:#5E84B3}
.text_blue_dark {color:#476487}
.text_blue_darker {color:#28394C}
.text_green {color: #339900}
.text_green_dark {color: #277000}
.text_green_darker {color: #184400}
.text_orange{color: #FF8000}
.text_purple {color: #800080}
.text_gold {color:#FFB600}
.text_gold_link_no_underline a:link { color: #FFB600; text-decoration: none; border-bottom:none;}
.text_gold_link_no_underline a:visited { color: #FFB600; text-decoration: none; border-bottom:none;}
.text_gold_link_no_underline a:hover { color: #FFB600; text-decoration: none; border-bottom:none;}
.text_gold_link_no_underline a:active { color: #FFB600; text-decoration: none; border-bottom:none;}
.text_gold_dark {color:#AF7B00}
.text_gold_bright {color:#FFD800}
.text_brown {color:#993300}

.text-gradient-gold {
	background: var(--gradient-gold);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.text_5 { font-size: calc(30px + 1vw); line-height: 60px;}
.text_4 { font-size: calc(25px + 0.75vw); line-height: 50px;}
.text_3 { font-size: calc(20px + 0.5vw); line-height: 40px;}
.text_2 { font-size: calc(16px + 0.3vw); line-height: 30px;}
.text_1 { font-size: calc(14px + 0.3vw); line-height: 30px;}
.text_05 { font-size: calc(12px + 0.25vw); line-height: 26px;}
.text-1 { font-size: calc(9px + 0.2vw); line-height: 24px;}
.text-2 { font-size: calc(8px + 0.2vw); line-height: 22px;}
.text-3 { font-size: calc(7px + 0.2vw); line-height: 21px;}
.text-4 { font-size: calc(6px + 0.2vw); line-height: 20px;}
.text-5 { font-size: calc(5px + 0.2vw); line-height: 18px;}

.text_left {text-align: left;}
.text_center {text-align: center;}
.text_right {text-align: right;}

.text_underline {border-bottom: 2px solid #FFD800;}
.text_uppercase {text-transform: uppercase;}
.textlink {
	color: #3F3F3F;
	border-bottom: 1px solid #3F3F3F;
	cursor: pointer;
}
.textlink:hover {
	color: #000000;
	border-bottom: 1px solid #000000;
}

.text_highlight {
	background-color:#FC0;
	padding: 1px;
}

.text_vertical_center {
	display: table-cell;
	vertical-align: middle;
}
.text_vertical_bottom {
	display: table-cell;
	vertical-align: bottom;
}

.links_red a:link { color: #990000; text-decoration: none; border-bottom:1px dotted #990000;}
.links_red a:visited { color:#990000;}
.links_red a:hover { color:#F00; border-bottom:1px solid #F00;}
.links_red a:active { color:#990000; border-bottom:1px dotted #990000;}

.links_white a:link { color: #FFFFFF; text-decoration: none; border-bottom:1px dotted #FFFFFF;}
.links_white a:visited { color:#FFFFFF;}
.links_white a:hover { color:#FFFFFF; border-bottom:1px solid #FFFFFF;}
.links_white a:active { color:#FFFFFF; border-bottom:1px dotted #FFFFFF;}

.links_black a:link { color: #000000; text-decoration: none; border-bottom:1px dotted #000000;}
.links_black a:visited { color:#000000;}
.links_black a:hover { color:#000000; border-bottom:1px solid #000000;}
.links_black a:active { color:#000000; border-bottom:1px dotted #000000;}

.links_green a:link { color: #339900; text-decoration: none; border-bottom:1px dotted #339900;}
.links_green a:visited { color:#339900;}
.links_green a:hover { color:#47CC00; border-bottom:1px solid #47CC00;}
.links_green a:active { color:#339900; border-bottom:1px dotted #339900;}

.links_gray a:link { color: #3F3F3F; text-decoration: none; border-bottom:1px dotted #3F3F3F;}
.links_gray a:visited { color: #3F3F3F; }
.links_gray a:hover { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}
.links_gray a:active { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}

.links_gray_no_underline a:link { color: #3F3F3F; text-decoration: none; border-bottom:none;}
.links_gray_no_underline a:visited { color: #3F3F3F; }
.links_gray_no_underline a:hover { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}
.links_gray_no_underline a:active { color: #3F3F3F; border-bottom:1px dotted #3F3F3F;}

.links_gray_no_underline_no_hover a:link { color: #3F3F3F; text-decoration: none; border-bottom:none;}
.links_gray_no_underline_no_hover a:visited { color: #3F3F3F; }
.links_gray_no_underline_no_hover a:hover { color: #3F3F3F; text-decoration: none; border-bottom:none;}
.links_gray_no_underline_no_hover a:active { color: #3F3F3F; text-decoration: none; border-bottom:none;}

.links_white_no_underline a:link { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.links_white_no_underline a:visited { color: #FFFFFF; }
.links_white_no_underline a:hover { color: #FFFFFF; border-bottom:1px dotted #FFFFFF;}
.links_white_no_underline a:active { color: #FFFFFF; border-bottom:1px dotted #FFFFFF;}

.links_white_no_underline_no_hover a:link { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.links_white_no_underline_no_hover a:visited { color: #FFFFFF; }
.links_white_no_underline_no_hover a:hover { color: #FFFFFF; text-decoration: none; border-bottom:none;}
.links_white_no_underline_no_hover a:active { color: #FFFFFF; text-decoration: none; border-bottom:none;}

.links_black_no_underline a:link { color: #000000; text-decoration: none; border-bottom:none;}
.links_black_no_underline a:visited { color: #000000; }
.links_black_no_underline a:hover { color: #000000; border-bottom:1px dotted #000000;}
.links_black_no_underline a:active { color: #000000; border-bottom:1px dotted #000000;}

.links_no_underline a:link { color: #000000; text-decoration: none; border-bottom:none;}
.links_no_underline a:visited { color: #000000; text-decoration: none; border-bottom:none;}
.links_no_underline a:hover { color: #000000; text-decoration: none; border-bottom:none;}
.links_no_underline a:active { color: #000000; text-decoration: none; border-bottom:none;}

.links_footer a:link { color: #999999; text-decoration: none; border-bottom:none;}
.links_footer a:visited { color: #999999; text-decoration: none; border-bottom:none;}
.links_footer a:hover { color: #E5E5E5; text-decoration: none; border-bottom:none;}
.links_footer a:active { color: #E5E5E5; text-decoration: none; border-bottom:none;}

.no_link { cursor:pointer;}
.no_underline { text-decoration:none; border-bottom:none;}

.underline_gray { color: #3F3F3F; text-decoration: none; border-bottom:1px dotted #3F3F3F;}

.arrow { cursor: default;}
.hand { cursor: pointer;}

/*.flex {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	align-items: center;
}*/
.flex_10 { flex: 1 0 10px;}
.flex_15 { flex: 1 0 15px;}
.flex_20 { flex: 1 0 20px;}
.flex_25 { flex: 1 0 25px;}
.flex_30 { flex: 1 0 30px;}
.flex_35 { flex: 1 0 35px;}
.flex_40 { flex: 1 0 40px;}
.flex_45 { flex: 1 0 45px;}
.flex_50 { flex: 1 0 50px;}
.flex_55 { flex: 1 0 55px;}
.flex_60 { flex: 1 0 60px;}
.flex_65 { flex: 1 0 65px;}
.flex_70 { flex: 1 0 70px;}
.flex_75 { flex: 1 0 75px;}
.flex_80 { flex: 1 0 80px;}
.flex_85 { flex: 1 0 85px;}
.flex_90 { flex: 1 0 90px;}
.flex_95 { flex: 1 0 95px;}
.flex_100 { flex: 1 0 100px;}
.flex_125 { flex: 1 0 125px;}
.flex_150 { flex: 1 0 150px;}
.flex_175 { flex: 1 0 175px;}
.flex_200 { flex: 1 0 200px;}
.flex_250 { flex: 1 0 250px;}
.flex_275 { flex: 1 0 275px;}
.flex_300 { flex: 1 0 300px;}
.flex_350 { flex: 1 0 350px;}
.flex_400 { flex: 1 0 400px;}
.flex_450 { flex: 1 0 450px;}
.flex_500 { flex: 1 0 500px;}
.flex_550 { flex: 1 0 550px;}
.flex_600 { flex: 1 0 600px;}
.flex_650 { flex: 1 0 650px;}
.flex_700 { flex: 1 0 700px;}
.flex_750 { flex: 1 0 750px;}
.flex_800 { flex: 1 0 800px;}
.flex_850 { flex: 1 0 850px;}
.flex_900 { flex: 1 0 900px;}
.flex_950 { flex: 1 0 950px;}
.flex_1000 { flex: 1 0 1000px;}
.flex_grow_0 { flex-grow: 0;}
.flex_grow_025 { flex-grow: 0.25;}
.flex_grow_05 { flex-grow: 0.5;}
.flex_grow_1 { flex-grow: 1;}
.flex_grow_2 { flex-grow: 2;}
.flex_grow_3 { flex-grow: 3;}
.flex_grow_4 { flex-grow: 4;}
.flex_grow_5 { flex-grow: 5;}
.flex_grow_6 { flex-grow: 6;}
.flex_grow_7 { flex-grow: 7;}
.flex_grow_8 { flex-grow: 8;}
.flex_grow_9 { flex-grow: 9;}
.flex_grow_10 { flex-grow: 10;}
.flex_hide_100 { visibility: visible;}
@media screen and (max-width: 100px) { .flex_hide_100 { display: none;}}
.flex_hide_200 { visibility: visible;}
@media screen and (max-width: 200px) { .flex_hide_200 { display: none;}}
.flex_hide_300 { visibility: visible;}
@media screen and (max-width: 300px) { .flex_hide_300 { display: none;}}
.flex_hide_400 { visibility: visible;}
@media screen and (max-width: 400px) { .flex_hide_400 { display: none;}}
.flex_hide_500 { visibility: visible;}
@media screen and (max-width: 500px) { .flex_hide_500 { display: none;}}
.flex_hide_550 { visibility: visible;}
@media screen and (max-width: 550px) { .flex_hide_550 { display: none;}}
.flex_hide_600 { visibility: visible;}
@media screen and (max-width: 600px) { .flex_hide_600 { display: none;}}
.flex_hide_650 { visibility: visible;}
@media screen and (max-width: 650px) { .flex_hide_650 { display: none;}}
.flex_hide_700 { visibility: visible;}
@media screen and (max-width: 700px) { .flex_hide_700 { display: none;}}
.flex_hide_750 { visibility: visible;}
@media screen and (max-width: 750px) { .flex_hide_750 { display: none;}}
.flex_hide_800 { visibility: visible;}
@media screen and (max-width: 800px) { .flex_hide_800 { display: none;}}
.flex_hide_900 { visibility: visible;}
@media screen and (max-width: 900px) { .flex_hide_900 { display: none;}}
.flex_hide_1000 { visibility: visible;}
@media screen and (max-width: 1000px) { .flex_hide_1000 { display: none;}}
.flex_hide_1100 { visibility: visible;}
@media screen and (max-width: 1100px) { .flex_hide_1100 { display: none;}}
.flex_hide_1200 { visibility: visible;}
@media screen and (max-width: 1200px) { .flex_hide_1200 { display: none;}}
.flex_hide_1300 { visibility: visible;}
@media screen and (max-width: 1300px) { .flex_hide_1300 { display: none;}}
.flex_hide_1400 { visibility: visible;}
@media screen and (max-width: 1400px) { .flex_hide_1400 { display: none;}}
.flex_hide_1500 { visibility: visible;}
@media screen and (max-width: 1500px) { .flex_hide_1500 { display: none;}}
.flex_max_50 { max-width: 50px;}
.flex_max_100 { max-width: 100px;}
.flex_max_150 { max-width: 150px;}
.flex_max_200 { max-width: 200px;}
.flex_center { align-items: center;}

/* Display */
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.grid { display: grid; }
.hidden { display: none; }

/* Height */
.h-0\.5 { height: 0.125rem; }
.h-2 { height: 0.5rem; }
.h-3 { height: 0.75rem; }
.h-3\.5 { height: 0.875rem; }
.h-4 { height: 1rem; }
.h-5 { height: 1.25rem; }
.h-6 { height: 1.5rem; }
.h-8 { height: 2rem; }
.h-10 { height: 2.5rem; }
.h-12 { height: 3rem; }
.h-14 { height: 3.5rem; }
.h-16 { height: 4rem; }
.h-24 { height: 6rem; }
.h-32 { height: 8rem; }
.h-48 { height: 12rem; }
.h-80 { height: 20rem; }
.h-96 { height: 24rem; }
.h-full { height: 100%; }

.max-h-screen { max-height: 100vh; }
.min-h-screen { min-height: 100vh; }

/* Width */
.w-0\.5 { width: 0.125rem; }
.w-2 { width: 0.5rem; }
.w-3 { width: 0.75rem; }
.w-3\.5 { width: 0.875rem; }
.w-4 { width: 1rem; }
.w-5 { width: 1.25rem; }
.w-6 { width: 1.5rem; }
.w-8 { width: 2rem; }
.w-10 { width: 2.5rem; }
.w-12 { width: 3rem; }
.w-14 { width: 3.5rem; }
.w-16 { width: 4rem; }
.w-24 { width: 6rem; }
.w-32 { width: 8rem; }
.w-48 { width: 12rem; }
.w-80 { width: 20rem; }
.w-96 { width: 24rem; }
.w-\[80\%\] { width: 80%; }
.w-full { width: 100%; }

.min-w-0 { min-width: 0px; }
.max-w-3xs { max-width: 16rem; }
.max-w-2xs { max-width: 18rem; }
.max-w-xs { max-width: 20rem; }
.max-w-sm { max-width: 24rem; }
.max-w-md { max-width: 28rem; }
.max-w-lg { max-width: 32rem; }
.max-w-xl { max-width: 36rem; }
.max-w-2xl { max-width: 42rem; }
.max-w-3xl { max-width: 48rem; }
.max-w-4xl { max-width: 56rem; }
.max-w-5xl { max-width: 64rem; }
.max-w-6xl { max-width: 72rem; }
.max-w-7xl { max-width: 80rem; }
.max-w-full { max-width: 100%; }

/* Position */
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }

/* Inset */
.inset-0 { inset: 0px; }
.-top-2 { top: -0.5rem; }
.-right-2 { right: -0.5rem; }
.-left-2 { left: -0.5rem; }
.-bottom-2 { bottom: -0.5rem; }

.top-0 { top: 0px; }
.top-1\/4 { top: 25%; }
.top-2 { top: 0.5rem; }
.top-3 { top: 0.75rem; }
.top-4 { top: 1rem; }
.top-6 { top: 1.5rem; }
.top-8 { top: 2rem; }
.top-12 { top: 3rem; }
.top-16 { top: 4rem; }

.bottom-0 { bottom: 0px; }
.bottom-1\/4 { bottom: 25%; }
.bottom-2 { bottom: 0.5rem; }
.bottom-3 { bottom: 0.75rem; }
.bottom-4 { bottom: 1rem; }
.bottom-6 { bottom: 1.5rem; }
.bottom-8 { bottom: 2rem; }
.bottom-12 { bottom: 3rem; }
.bottom-16 { bottom: 4rem; }

.left-0 { left: 0px; }
.left-1\/4 { left: 25%; }
.left-\[60\%\] { left: 60%; }
.left-2 { left: 0.5rem; }
.left-3 { left: 0.75rem; }
.left-4 { left: 1rem; }
.left-6 { left: 1.5rem; }
.left-8 { left: 2rem; }
.left-12 { left: 3rem; }
.left-16 { left: 4rem; }

.right-0 { right: 0px; }
.right-1\/4 { right: 25%; }
.right-2 { right: 0.5rem; }
.right-3 { right: 0.75rem; }
.right-4 { right: 1rem; }
.right-6 { right: 1.5rem; }
.right-8 { right: 2rem; }
.right-12 { right: 3rem; }
.right-16 { right: 4rem; }

/* Z-index */
.z-10 { z-index: 10; }
.z-50 { z-index: 50; }
.z-\[100\] { z-index: 100; }

/* Margin */
.mx-auto { margin-left: auto; margin-right: auto; }

.mb-0\.5 { margin-bottom: 0.125rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mb-6 { margin-bottom: 1.5rem; }
.mb-8 { margin-bottom: 2rem; }
.mb-12 { margin-bottom: 3rem; }
.mb-16 { margin-bottom: 4rem; }

.mt-0\.5 { margin-top: 0.125rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-4 { margin-top: 1rem; }
.mt-6 { margin-top: 1.5rem; }
.mt-8 { margin-top: 2rem; }
.mt-12 { margin-top: 3rem; }
.mt-16 { margin-top: 4rem; }

.ml-0\.5 { margin-left: 0.125rem; }
.ml-2 { margin-left: 0.5rem; }
.ml-3 { margin-left: 0.75rem; }
.ml-4 { margin-left: 1rem; }
.ml-6 { margin-left: 1.5rem; }
.ml-8 { margin-left: 2rem; }
.ml-12 { margin-left: 3rem; }
.ml-16 { margin-left: 4rem; }

.mr-0\.5 { margin-right: 0.125rem; }
.mr-2 { margin-right: 0.5rem; }
.mr-3 { margin-right: 0.75rem; }
.mr-4 { margin-right: 1rem; }
.mr-6 { margin-right: 1.5rem; }
.mr-8 { margin-right: 2rem; }
.mr-12 { margin-right: 3rem; }
.mr-16 { margin-right: 4rem; }

/* Padding */
.p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }
.p-4 { padding: 1rem; }
.p-5 { padding: 1.25rem; }
.p-6 { padding: 1.5rem; }
.p-8 { padding: 2rem; }
.p-12 { padding: 3rem; }
.p-16 { padding: 4rem; }
.p-20 { padding: 5rem; }

.pt-2 { padding-top: 0.5rem; }
.pt-3 { padding-top: 0.75rem; }
.pt-4 { padding-top: 1rem; }
.pt-5 { padding-top: 1.25rem; }
.pt-6 { padding-top: 1.5rem; }
.pt-8 { padding-top: 2rem; }
.pt-12 { padding-top: 3rem; }
.pt-16 { padding-top: 4rem; }
.pt-20 { padding-top: 5rem; }

.pb-2 { padding-bottom: 0.5rem; }
.pb-3 { padding-bottom: 0.75rem; }
.pb-4 { padding-bottom: 1rem; }
.pb-5 { padding-bottom: 1.25rem; }
.pb-6 { padding-bottom: 1.5rem; }
.pb-8 { padding-bottom: 2rem; }
.pb-12 { padding-bottom: 3rem; }
.pb-16 { padding-bottom: 4rem; }
.pb-20 { padding-bottom: 5rem; }

.pl-2 { padding-left: 0.5rem; }
.pl-3 { padding-left: 0.75rem; }
.pl-4 { padding-left: 1rem; }
.pl-5 { padding-left: 1.25rem; }
.pl-6 { padding-left: 1.5rem; }
.pl-8 { padding-left: 2rem; }
.pl-12 { padding-left: 3rem; }
.pl-16 { padding-left: 4rem; }
.pl-20 { padding-left: 5rem; }

.pr-2 { padding-right: 0.5rem; }
.pr-3 { padding-right: 0.75rem; }
.pr-4 { padding-right: 1rem; }
.pr-5 { padding-right: 1.25rem; }
.pr-6 { padding-right: 1.5rem; }
.pr-8 { padding-right: 2rem; }
.pr-12 { padding-right: 3rem; }
.pr-16 { padding-right: 4rem; }
.pr-20 { padding-right: 5rem; }

.px-0\.5 { padding-left: 0.125rem; padding-right: 0.125rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-8 { padding-left: 2rem; padding-right: 2rem; }
.px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }
.px-16 { padding-left: 4rem; padding-right: 4rem; }
.px-24 { padding-left: 6rem; padding-right: 6rem; }

.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.py-24 { padding-top: 6rem; padding-bottom: 6rem; }

/* Flexbox */
.flex-1 { flex: 1 1 0%; }
.flex-shrink-0 { flex-shrink: 0; }

/* Animation */
@keyframes pulse {
	50% { opacity: .5; }
}
.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }

/* Cursor */
.cursor-pointer { cursor: pointer; }

/* Grid */
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Flex Direction */
.flex-col { flex-direction: column; }
.flex-col-reverse { flex-direction: column-reverse; }
.flex-wrap { flex-wrap: wrap; }

/* Alignment */
.items-start { align-items: flex-start; }
.items-center { align-items: center; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }

/* Gap */
.gap-1 { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-12 { gap: 3rem; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-6 { gap: 1.5rem; }
.gap-8 {gap: 2rem; }

/* Self Alignment */
.self-start { align-self: flex-start; }

/* Overflow */
.overflow-auto{overflow:auto}
.overflow-hidden{overflow:hidden}
.overflow-y-auto{overflow-y:auto}
.overflow-x-hidden{overflow-x:hidden}
.break-words{overflow-wrap:break-word}

/* Text Overflow */
.truncate {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.whitespace-nowrap { white-space: nowrap; }

/* Border Radius */
.rounded-2xl { border-radius: 1rem; }
.rounded-full { border-radius: 9999px; }
.rounded-lg { border-radius: var(--radius); }
.rounded-xl { border-radius: 0.75rem; }

/* Borders */
.border { border-width: 1px; border-style: solid; }
.border-2 { border-width: 2px; }
.border-b { border-bottom-width: 1px; }
.border-t { border-top-width: 1px; border-top-style: solid; }

/* Border Colors */
.border-border { border-color: hsl(var(--border)); }
.border-primary { border-color: hsl(var(--primary)); }
.border-primary\/50 { border-color: hsl(var(--primary) / 0.5); }
.border-secondary { border-color: hsl(var(--secondary)); }
.border-transparent { border-color: transparent; }

/* Backgrounds */
.bg-accent { background-color: hsl(var(--accent)); }
.bg-accent\/10 { background-color: hsl(var(--accent) / 0.1); }
.bg-background { background-color: hsl(var(--background)); }
.bg-background\/80 { background-color: hsl(var(--background) / 0.8); }
.bg-border { background-color: hsl(var(--border)); }
.bg-card { background-color: hsl(var(--card)); }
.bg-muted { background-color: hsl(var(--muted)); }
.bg-muted\/30 { background-color: hsl(var(--muted) / 0.3); }
.bg-muted\/50 { background-color: hsl(var(--muted) / 0.5); }
.bg-primary { background-color: hsl(var(--primary)); }
.bg-primary\/10 { background-color: hsl(var(--primary) / 0.1); }
.bg-secondary { background-color: hsl(var(--secondary)); }
.bg-transparent { background-color: transparent; }

/* Gradients */
.bg-gradient-to-t { background-image: linear-gradient(to top, var(--tw-gradient-stops)); }
.bg-gradient-pitch { background: var(--gradient-pitch); }
.bg-gradient-hero { background: var(--gradient-hero); }

.from-background {
	--tw-gradient-from: hsl(var(--background)) var(--tw-gradient-from-position);
	--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.to-transparent { --tw-gradient-to: transparent var(--tw-gradient-to-position); }

/* Text Align */
.text-center { text-align: center; }

/* Font Size */
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.text-5xl { font-size: 3rem; line-height: 1; }
.text-6xl { font-size: 3.75rem; line-height: 1; }

/* Font Weight */
.font-bold { font-weight: 700; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight: 600; }

/* Letter Spacing */
.tracking-wide { letter-spacing: 0.025em; }

/* Text Colors */
.text-accent { color: hsl(var(--accent)); }
.text-accent-foreground { color: hsl(var(--accent-foreground)); }
.text-foreground { color: hsl(var(--foreground)); }
.text-muted-foreground { color: hsl(var(--muted-foreground)); }
.text-primary { color: hsl(var(--primary)); }
.text-primary-foreground { color: hsl(var(--primary-foreground)); }
.text-primary-foreground\/30 { color: hsl(var(--primary-foreground) / 0.3); }
.text-primary-foreground\/80 { color: hsl(var(--primary-foreground) / 0.8); }
.text-secondary { color: hsl(var(--secondary)); }
.text-secondary-foreground { color: hsl(var(--secondary-foreground)); }

.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}
.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}
.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}
.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}
.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}
.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}
.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}
.break-words{overflow-wrap:break-word}

/* Shadows */
.shadow-lg {
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md {
	--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm {
	--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
	--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-card {
	--tw-shadow-color: hsl(var(--card));
	--tw-shadow: var(--tw-shadow-colored);
	box-shadow: var(--shadow-card);
}
.shadow-glow {
	box-shadow: var(--shadow-glow);
}

/* Blur */
.blur-3xl {
	--tw-blur: blur(64px);
	filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur-lg {
	--tw-backdrop-blur: blur(16px);
	-webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
	backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

/* Transitions */
.transition-all {
	transition-property: all;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}

.transition-colors {
	transition-property: color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}

.transition-transform {
	transition-property: transform;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}

.duration-300 { transition-duration: 300ms; }

/* Hover States */
.hover\:scale-\[1\.02\]:hover {
	--tw-scale-x: 1.02;
	--tw-scale-y: 1.02;
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:border-primary:hover { border-color: hsl(var(--primary)); }
.hover\:border-primary\/30:hover { border-color: hsl(var(--primary) / 0.3); }
.hover\:bg-muted:hover { background-color: hsl(var(--muted)); }
.hover\:bg-primary:hover { background-color: hsl(var(--primary)); }
.hover\:bg-primary\/10:hover { background-color: hsl(var(--primary) / 0.1); }
.hover\:bg-primary\/80:hover { background-color: hsl(var(--primary) / 0.8); }
.hover\:bg-primary\/90:hover { background-color: hsl(var(--primary) / 0.9); }
.hover\:bg-secondary:hover { background-color: hsl(var(--secondary)); }
.hover\:bg-secondary\/80:hover { background-color: hsl(var(--secondary) / 0.8); }
.hover\:text-foreground:hover { color: hsl(var(--foreground)); }
.hover\:text-primary:hover { color: hsl(var(--primary)); }
.hover\:text-primary-foreground:hover { color: hsl(var(--primary-foreground)); }
.hover\:text-secondary-foreground:hover { color: hsl(var(--secondary-foreground)); }

.hover\:shadow-lg:hover {
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Focus States */
.focus\:outline-none:focus {
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.focus\:ring-2:focus {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-ring:focus { --tw-ring-color: hsl(var(--ring)); }
.focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px; }

.focus-visible\:outline-none:focus-visible {
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.focus-visible\:ring-2:focus-visible {
	--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
	--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
	box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-ring:focus-visible { --tw-ring-color: hsl(var(--ring)); }
.focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width: 2px; }

/* Active States */
.active\:scale-\[0\.98\]:active {
	--tw-scale-x: 0.98;
	--tw-scale-y: 0.98;
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* Disabled States */
.disabled\:pointer-events-none:disabled { pointer-events: none; }
.disabled\:opacity-50:disabled { opacity: 0.5; }

/* Group Hover States */
.group:hover .group-hover\:translate-x-1 {
	--tw-translate-x: 0.25rem;
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-110 {
	--tw-scale-x: 1.1;
	--tw-scale-y: 1.1;
	transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:text-primary { color: hsl(var(--primary)); }

.group:hover .group-hover\:shadow-\[0_0_30px_hsla\(45\2c 90\%\2c 55\%\2c 0\.3\)\] {
	--tw-shadow: 0 0 30px hsla(45,90%,55%,0.3);
	--tw-shadow-colored: 0 0 30px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Responsive: Small screens (sm) */
@media (min-width: 640px) {
	.sm\:bottom-0 { bottom: 0px; }
	.sm\:right-0 { right: 0px; }
	.sm\:top-auto { top: auto; }
	.sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sm\:flex-row { flex-direction: row; }
	.sm\:flex-col { flex-direction: column; }
}

/* Responsive: Medium screens (md) */
@media (min-width: 768px) {
	.md\:flex { display: flex; }
	.md\:hidden { display: none; }
	.md\:max-w-\[420px\] { max-width: 420px; }
	.md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.md\:flex-row { flex-direction: row; }
	.md\:items-end { align-items: flex-end; }
	.md\:gap-8 { gap: 2rem; }
	.md\:self-auto { align-self: auto; }
	.md\:p-12 { padding: 3rem; }
	.md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
	.md\:text-5xl { font-size: 3rem; line-height: 1; }
	.md\:text-7xl { font-size: 4.5rem; line-height: 1; }
	.md\:text-xl { font-size: 1.25rem; line-height: 1.75rem; }
}

/* Responsive: Large screens (lg) */
@media (min-width: 1024px) {
	.lg\:block { display: block; }
	.lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.lg\:text-8xl { font-size: 6rem; line-height: 1; }
}

/* SVG Utilities */
.\[\&_svg\]\:pointer-events-none svg { pointer-events: none; }
.\[\&_svg\]\:size-4 svg { width: 1rem; height: 1rem; }
.\[\&_svg\]\:shrink-0 svg { flex-shrink: 0; }