/*
	Theme Name: STTV Theme
	Description: Hello Elementor Child
	Author: Very Vidi Vici OÜ
	Author URI: https://veryvidivici.com/
	Template: hello-elementor
	Version: 1.0.7
	Stable tag: 1.0.7
	Requires at least: 6.0
	Tested up to: 7.0
	Requires PHP: 7.4
	Text Domain: vvv_sttv
*/

:root {
	--color-white:   #F8F9FA;
	--color-yellow:  #FFC200;
	--color-fusain:  #1F2937;
	--color-black:   #121212;
	--color-brick:   #C05A46;
	--color-blue1:   #1B263B; /* Text */
	--color-blue2:   #1F2937; /* Secondary */
	--color-teal:    #52796F;
	--color-success: #0A875A;
	--color-danger:  #DC2626;
}


/* Menu.Header */

nav.site-navigation li .sttv-mya-label,
nav.site-navigation li .sttv-fb-label {
	font-size: 0;
	/*display: none;*/ /* Not good for Agents */
}
nav.site-navigation-dropdown li .sttv-mya-icon, 
nav.site-navigation-dropdown li .sttv-fb-icon {
	display: none;
}

.site-navigation-dropdown ul.menu li.current-menu-item a {
	color: unset;
	background-color: unset;
}


/* Icons */

.copy-btn {
	font-size: .75rem;
	cursor: pointer;
}
.copy-btn.success {
	color: var(--color-success) !important;
	cursor: default;
}


/* Tooltips */
/* Source - https://stackoverflow.com/a/71250946 */

[data-sttv-tooltip]:hover {
	position: relative;
	cursor: help;
}

[data-sttv-tooltip]:hover::after {
	opacity: 1;
}

[data-sttv-tooltip]::after {
	content: attr(data-sttv-tooltip);
	position: absolute;
	right: 100%;
	bottom: 100%;
	background-color: var(--color-blue1);
	color: var(--color-white);
	width: max-content;
	opacity: 0;
	-webkit-transition: opacity 0.75s ease-in-out;
	white-space: pre;
	padding: .5rem;
	border-radius: .5rem;
	font-family: "Titillium Web", sans-serif;
	line-height: 1.25rem;
}


/* Buttons  */

button, 
a.elementor-button {
	border-radius: .5rem !important;
	border: none !important;
}

/* Header Logo (non-elementor pages */

.site-header .site-branding .site-logo img {
    width: 15em;
    max-width: 15em;
}


/* Home */

body.home h1 {
	display: none;
}

body.home h2 {
	font-size: 2.5rem;
	font-weight: var(--e-global-typography-primary-font-weight);
	color: var(--color-teal);
}

@media only screen and (max-width: 768px) {
	body.home h2 {
		font-size: 2rem;
	}
}

body.home .page-content .e-con-full.e-parent:nth-child(1) p {
	margin-block-end: 0;
}


/* Brand & Accent */

span.brand {
	font-weight: bold;
	text-wrap: nowrap;
	margin-left: -.25rem;
	margin-right: -.25rem;
}
span.brand:before {
	/* content: "« "; */
	content: "「";
}
span.brand:after {
	/* content: " »"; */
	content: "」";
}
h1 .brand, 
body.home h2 .brand {
	color: var(--color-blue1);
}
h1 .accent, 
body.home h2 .accent {
	color: var(--color-brick);
}


/* Need / Don't Need */

.need {
	color: var(--color-success);
	font-weight: 600;
}
.no-need {
	color: var(--color-danger);
	font-weight: 600;
}
.elementor-widget .elementor-icon-list-item a {
	display: inline !important;
}


/* Main Content */

a:hover .icon-element {
	color: unset; /* var(--color-teal); */
}

main .elementor-widget-text-editor > ul,
main .woocommerce-Tabs-panel--description > ul {
	margin-bottom: 0.9rem;
}

.page-content .post-tags {
	display: none;
}

main.type-post .elementor-widget-text-editor a,
main.type-page .elementor-widget-text-editor a,
.elementor-widget-alert a {
	text-decoration: underline;
}


/* Privacy Policy -- T&C */

.sttv-last-updated {
	text-align: center;
}

body.sttv-tc .page-content {
	counter-reset: sttv-tc;
}
body.sttv-tc .page-content h2 {
	counter-increment: sttv-tc;
}
body.sttv-tc .page-content h2:before {
	content: counters(sttv-tc,  ".") ". "; /* The first "." is the sub-lists separator (1.2, 1.3, etc.) */
}


/* User Guide */

.default-value {
	font-family: monospace;
	font-size: small;
}
.default-value .label {
	text-decoration: underline;
}


/* Brevo Pro Subscribe */

.sib_loader img {
	max-width: 1em !important;
}
.pro-subscribe-bloc {
	display: flex;
	flex-direction: row;
	column-gap: .25rem;
}
.pro-subscribe-bloc > * {
	margin: 0px;
}
.pro-subscribe-bloc > div:nth-child(1) {
	flex-basis: 75%;
}
.pro-subscribe-bloc > div:nth-child(2) {
	flex-basis: 25%;
}
.pro-subscribe-bloc input {
	padding: .5rem;
	border-radius: .5rem;
}
.pro-subscribe-bloc button {
	padding: .5rem 1rem;
	/*border-radius: .5rem;*/
	border: none;
	background-color: var(--color-yellow);
	color: var(--color-blue1);
}
.pro-subscribe-bloc button:hover {
	background-color: var(--color-blue1);
	color: var(--color-white);
}


/* Archive -- Blog */

h1 .sttv-blog-title-prefix:after {
	content: " \276F";
	font-size: 75%;
	vertical-align: middle;
	margin-left: .1em;
	color: var(--color-brick);
}

body.archive .page-content,
body.blog .page-content {
	display: flex;
	flex-wrap: wrap;
	row-gap: 3em;
	column-gap: 5em;
}

body.archive article.post,
body.blog article.post {
	/* flex: 0 0 50%; */
	flex-basis: calc(50% - 2.5em);
	display: flex;
	flex-wrap: wrap;
}

body.archive article.post > h2,
body.blog article.post > h2 {
	flex: 0 0 100%;
	font-size: 1.5rem;
}

body.archive article.post > h2 a,
body.blog article.post > h2 a {
	color: inherit;
}

body.archive article.post > a,
body.blog article.post > a {
	flex: 0 0 40%;
}

body.archive article.post > p,
body.blog article.post > p {
	flex: 0 0 60%;
	padding-left: 1em;
}

@media (max-width: 1200px) {
	body.archive main,
	body.blog main {
		max-width: 80% !important;
	}
}

@media (max-width: 768px) {
	body.archive main,
	body.blog main {
		max-width: 90% !important;
	}
	body.archive article.post > a,
	body.blog article.post > a {
		flex: 0 0 100%;
	}

	body.archive article.post > p,
	body.blog article.post > p {
		flex: 0 0 100%;
		padding-left: initial;
	}
	body.archive article.post > h2,
	body.blog article.post > h2 {
		font-size: 1.25rem;
	}
}


/* Footer */

footer {
	margin-top: 5em;
	background-color: var(--color-blue2);
}
footer .site-navigation {
	align-items: unset;
}
footer * {
	color: var(--color-white) !important;
}
footer a:hover {
	color: var(--color-yellow) !important;
}
footer .footer-inner {
	background-image: url(/wp-content/uploads/2026/09/logo_rounded_icon_500.webp);
	background-position-x: left;
	background-position-y: top;
	background-repeat: no-repeat;
	background-size: 3em; /* was: auto 50% */
}

footer .site-navigation ul.menu {
	display: block;
}
footer .site-navigation ul.menu li {
	display: list-item;
	list-style-type: circle;
	line-height: 1rem;
}


/* Woo */

.wp-block-woocommerce-cart.alignwide {
	margin: 0 auto;
}
@media only screen and (max-width: 1200px) {
	.wp-block-woocommerce-cart.alignwide {
		margin: 0 10px;
		width: unset;
	}
}

.woocommerce-breadcrumb, 
.woocommerce-ordering, 
.woocommerce-result-count, 
.product_meta {
	display: none;
}
form.cart {
	display: flex;
}
.related.products {
	clear: both;
}
button.single_add_to_cart_button {
	background-color: var(--color-blue1) !important;
}
button.single_add_to_cart_button:hover {
	background-color: var(--color-teal) !important;
}
a.ajax_add_to_cart {
	background-color: var(--color-blue1);
	color: var(--color-white);
	border-radius: .5rem;
	text-decoration: none;
}
a.ajax_add_to_cart:hover {
	background-color: var(--color-teal) !important;
	color: var(--color-white);
}
a.wc-block-cart__submit-button {
	background-color: var(--color-blue1);
	color: var(--color-white);
	text-decoration: none;
	border: none;
	/*border-radius: .5rem;*/
}
a.wc-block-cart__submit-button:hover {
	background-color: var(--color-teal);
	color: var(--color-white);
}
button.wc-block-components-checkout-place-order-button {
    border: none;
}
button.wc-block-components-checkout-place-order-button:hover {
    color: var(--color-white);
}


/* My Account */

.woocommerce-MyAccount-downloads-file {
	color: var(--color-white);
	background-color: var(--color-blue1) !important;
}
.woocommerce-MyAccount-downloads-file:hover {
	background-color: var(--color-teal) !important;
}

nav.woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	padding: 0 1rem 0 0;
}
nav.woocommerce-MyAccount-navigation ul li a {
	border: 1px solid var(--color-blue1);
	border-radius: .5rem;
	padding: .25rem .5rem;
	margin-bottom: .5rem;
	text-decoration: none;
	display: inline-block;
	width: 100%;
}
nav.woocommerce-MyAccount-navigation ul li.is-active a:before {
	content: "\276F";
	margin-right: .25rem;
}
nav.woocommerce-MyAccount-navigation ul li.is-active a {
	font-weight: bold;
}
nav.woocommerce-MyAccount-navigation ul li a:hover {
	background-color: var(--color-blue1);
	color: var(--color-white);
}


/* Licences */

#licences-table pre {
	display: inline;
	font-size: .75rem;
}

#licences-table td.licence-product {
	font-weight: bold;
}
#licences-table td.licence-product span:before {
	content: "\27A5";
	margin-right: .25rem;
}

/* #licences-table .eicon-help, */
#licences-table label.error {
	color: indianred;
}
#licences-table label.ajax-success, 
#licences-table label.ajax-error {
	display: inline-block !important;
}
#licences-table label.ajax-success {
	color: var(--color-success);
}

.sttv-invitee-email-form .wrapper {
	display: flex;
}
.sttv-invitee-email-form .wrapper input {
	flex-basis: 90%;
	margin-right: .25rem;
}
.sttv-invitee-email-form input.has-error {
	border: 1px solid indianred;
}

.sttv-invitee-email-form .wrapper button {
	flex-basis: 10%;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto;
	height: auto;
}


/* Shortcodes */

form.sttv_addtocart button {
	border: none;
	/*border-radius: .5rem;*/
	flex-basis: 90%;
	margin: 0 5% 1rem 5%;
}

form.sttv_addtocart .price {
	font-size: smaller;
}


/* CTA Elementor */

.elementor-widget-cta .ehp-cta__description a {
	color: var(--color-success);
}


/* WPML  */

.site-navigation ul.menu li.wpml-ls-item ul {
	min-width: unset;
	inset-inline-end: unset;
}

.wpml-ls-statics-footer {
	margin: 0 !important;
	padding: 1em 0;
}

header .site-navigation-dropdown li.wpml-ls-menu-item {
  display: none !important;
}

@media only screen and (min-width: 992px) {
  .wpml-ls-statics-footer {
  	display: none;
  }
}


/*********************************************** Responsive ***********************************************/

/* Tablet */

@media only screen and (max-width: 1200px) {
	#site-header .header-inner,
	#content .entry-title {
		max-width: unset;
		padding-right: 10px;
		padding-left: 10px;
	}
}


/* Mobile */

@media only screen and (max-width: 768px) {

	body { font-size: 0.8rem }
	h1 { font-size: 2rem }
	h2 { font-size: 1.75rem }
	h3 { font-size: 1.5rem }
	h4 { font-size: 1.25rem }
	h5, h6 { font-size: 1rem }

	.pro-subscribe-bloc input {
		padding: .25rem;
		font-size: .75rem;
    border-radius: .25rem;
	}
	.pro-subscribe-bloc button {
    padding: .2rem .5rem;
		font-size: .8rem;
    border-radius: .25rem;
	}

	footer .footer-inner {
		padding-top: 3em;
		background-position-x: center;
		background-size: 2em;
	}
	footer ul#menu-footer {
		margin-bottom: 2em;
	}

}


/* Scroll */

html {
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
html {
  scroll-padding-top: 100px;
}
