/***
 *	Core Style: loaded on frontend and on Editor
 *	2025-08-18
 */


:root, .light {
	--text-size: 16px;
	--text-color: #333;
	--text-font: tahoma, sans-serif;
	--text-weight: normal;
	--text-line-height: 1.5;
	--text-transform: none;

	--title-color: #666;
	--title-font: tahoma, sans-serif;
	--title-weight: 700;
	--title-line-height: 1.2;
	--title-transform: none;

	--link-color: #666;
	--link-color-hover: #333;

	--bg-color: #eee;

	--placeholder-color: #999;
	--input-color: #333;
	--input-bg-color: #eee;
	--input-border-color: #666;
	--input-border-color-active: #333;

	--gap: 20px;

	--round: 4px;

	--wrap: 1240px;

}


.dark {
	--text-color: #fff;
	--title-color: #eee;
	--link-color: #eee;
	--link-color-hover: #fff;

	--bg-color: #333;
}


*,
*::before,
*::after {
	box-sizing: border-box;
}

* {
	border: 0;
	margin: 0;
	outline: 0;
	padding: 0;
}

html {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	/* overflow-x: hidden;
	overflow-y: auto; */
	font-size: var( --text-size );
	font-family: var( --text-font );
	font-weight: var( --text-wight );
	line-height: var( --text-line-height );
	color: var( --text-color );
}

body {
	text-align: left;
	background-color: #fff;
	min-height: 100vh;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
	width: 100%;
}

	body,
	button,
	input,
	select,
	textarea {
		font-size: inherit;
		font-family: inherit;
		font-weight: inherit;
		line-height: inherit;
		color: inherit;
		/* -webkit-font-smoothing: antialiased; */
	}

	html,
	body,
	.light,
	.dark {
		color: var( --text-color );
	}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
	display: block;
}



a {
	color: var( --link-color );
	text-decoration: none;
	background-color: transparent;
	transition: all .3s linear;
}

	a:hover {
		color: var( --link-color-hover );
	}

	a:not([href]):not([tabindex]),
	a:not([href]):not([tabindex]):hover,
	a:not([href]):not([tabindex]):focus {
		color: inherit;
	}

	a:not([class]) {
		text-decoration-skip-ink: auto;
	}



abbr[title],
abbr[data-original-title] {
	border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
	text-decoration: none;
	cursor: help;
	text-decoration-skip-ink: none;
}


address {
	font-style: normal;
	line-height: inherit;
}

b,
strong {
	font-weight: bolder;
}

.small,
small,
time,
cite {
	font-size: .75rem;
	line-height: 1rem;
}


sub,
sup {
	position: relative;
	font-size: x-small;
	line-height: 0;
	vertical-align: baseline;
	margin-left: 1px;
	margin-right: 1px;
}

	sub {
		bottom: -.25em;
	}

	sup {
		top: -.5em;
	}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	border-bottom: 1px solid var( --text-color );
}

p {
	overflow-wrap: break-word;
  text-wrap: pretty;
}

h1, h2, h3, h4, h5, h6,
:where( h1, h2, h3, h4, h5, h6 ) a {
	text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	color: var( --title-color );
	font-family: var( --title-font );
	font-weight: var( --title-weight );
	text-transform: var( --title-transform );
	line-height: var( --title-line-height );
	text-wrap: balance;
	overflow-wrap: break-word;
}

h1, .h1 { font-size: 2.5rem; }
h2, .h2 { font-size: 2rem; }
h3, .h3 { font-size: 1.75rem; }
h4, .h4 { font-size: 1.5rem; }
h5, .h5 { font-size: 1.25rem; }
h6, .h6 { font-size: 1.125rem; }

	.subheading { font-weight: normal; }


ul,
ol { list-style-position: inside; }

	ol ol li { list-style-type: lower-alpha; }
	ol ol ol li { list-style-type: lower-roman; }

	nav ul, nav ol,
	.nav, .nav ul, .nav ol,
	ul[class], ol[class] { list-style: none; }


dt { font-weight: bold; }
	dd + dt { margin-top: var( --gap ); }

dd { margin-left: var( --gap ); margin-top: calc( var( --gap ) / 2 ); }



pre,
code,
kbd,
samp,
kbd {
	/* font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; */
	font-family: monospace, monospace;
	font-size: .875rem;
	/* font-size: 1rem; */
}

	pre,
	code {
		background: var( --bg-color );
		padding: var( --gap );
		line-height: 1.25;
		overflow: hidden;
		white-space: pre-wrap;
		word-break: break-all;
	}

		pre:hover,
		pre:hover {
			overflow: auto;
		}

	code {
		padding: calc( var( --gap ) / 4 );
	}


img,
picture,
figure {
	display: block;
	border-style: none;
	max-width: 100%;
}

	img.alignnone { display: inline-block; }

svg {
	overflow: hidden;
	vertical-align: middle;
}

	figure, img, video, audio {
		width: auto;
		max-width: 100%;
	}

	figure, img, video {
		height: auto;
	}

	figcaption,
	caption {
		caption-side: bottom;
		font-size: .75rem;
		/* font-style: italic; */
		line-height: 1rem;
		text-align: left;
		padding-top: calc( var( --gap ) / 4 );
		/* padding-bottom: calc( var( --gap ) / 4 ); */
	}



table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	max-width: 100%;
}

th {
	text-align: inherit;
}




label {
	display: inline-block;
	cursor: pointer;
}

/*
input,
button,
select,
optgroup,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
*/

button,
input {
	overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	border-radius: 0;
	-webkit-appearance: button;
}

	button:focus {
		outline: 1px dotted;
		outline: 5px auto -webkit-focus-ring-color;
	}

	button::-moz-focus-inner,
	[type="button"]::-moz-focus-inner,
	[type="reset"]::-moz-focus-inner,
	[type="submit"]::-moz-focus-inner {
		border-style: none;
	}

input[type="radio"],
input[type="checkbox"] {
	box-sizing: border-box;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
	-webkit-appearance: listbox;
}

textarea {
	overflow: auto;
	resize: vertical;
}

fieldset {
	min-width: 0;
}

legend {
	display: block;
	width: 100%;
	max-width: 100%;
	font-size: 1.5rem;
	line-height: inherit;
	color: inherit;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	outline-offset: -2px;
	-webkit-appearance: none;
}

	[type="search"]::-webkit-search-decoration {
		-webkit-appearance: none;
	}

	::-webkit-file-upload-button {
		font: inherit;
		-webkit-appearance: button;
	}

output {
	display: inline-block;
}

summary {
	display: list-item;
	cursor: pointer;
}

template,
[hidden] {
	display: none !important;
}


	figure caption,
	figure figcaption {
		margin-top: .5rem;
	}

:target {
  scroll-margin-block: 5ex;
}



/***
 *	WP Default Class
 *==============================*/

.wp-caption {}
	.wp-caption img {}
	.wp-caption-text { text-align: center; }
	.wp-smiley {}

.gallery { list-style: none; }
	.gallery li {}
	.gallery li a { display: block; text-align: center; }
	.gallery li img {}
	.gallery .caption {}

.size-full {}
.size-large {}
.size-medium {}
.size-thumbnail {}



/***
 *	Content
 *==============================*/
.content { position: relative; }

	#tinymce { padding: 1rem !important; }

	.block { width: 100%; }

	/* .section + .section, */
	.wrap + .wrap,
	.content + .content,
	.content * + :where( p, div, form, details, ul, ol, dl, iframe, object, embed ),
	.content .cols > * { margin-top: var( --gap ); }

		.content .gm-style * + * { margin-top: 0; }

	.content * + :where( h1, h2, h3, h4, h5, h6 ),
	.content * + :where( .h1, .h2, .h3, .h4, .h5, .h6 ) { margin-top: calc( var( --gap ) * 2 ); }

	.content li + li,
	.content li > ul,
	.content li > ol { margin-top: calc( var( --gap ) * .5 ); }
		.content [class] > li + li { margin-top: 0; }

	.content .hide + .col,
	.content .row:not( .m-gutter ) > .col + .col,
	.content .hide + .wpcf7-form { margin-top: 0; }

	.content iframe,
	.content object,
	.content embed { display: block; margin-left: auto; margin-right: auto; max-width: 100%; }

	.content p > img:not( .aligncenter ) { display: inline-block; }


/* Default Helpers */
.disabled,
[disabled],
[disabled="disabled"] { pointer-events: none; opacity: 0.5; }

.hand { cursor: pointer; }

.ir { text-indent: -999em; overflow: hidden; }

.no-select { -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -o-user-select: none; user-select: none; }


/* Remove _all_ animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: no-preference) {
	html {
		interpolate-size: allow-keywords;
	}
}

@media( prefers-reduced-motion: reduce ){
	* {
		animation-play-state: paused !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}
