/*
Theme Name: autoremppa.fi x Bad Pixel
Author: www.autoremppa.fi
Author URI: www.autoremppa.fi
Description: Teeman on toteuttanut © Bad Pixel Oy. | Teeman jälleenmyynti kielletty, ilman kirjallista lupaa.
Version: 0.1
Copyright: Kaikki oikeudet muutoksiin pidätetään © Bad Pixel Oy
Text Domain: badpixel
*/


/*--------------------------------------------------------------
# KOODIT
Keltainen:			#20e0ff
Musta:				#000
Valkoinen: 			#fff

Leipäteksti: Open Sans
Otsikot:	Playfair Display
--------------------------------------------------------------*/

:root {
  --color-bg_1: #20e0ff;
  --color-bg_2: #002b35;
  --color-bg_5: #000;
  --color-bg_6: #fff;  
  
  --color-font_1: #20e0ff;
  --color-font_2: #002b35;
  --color-font_5: #000;
  --color-font_6: #fff; 

  --hr_bg_1: #eaeaea;
 
  --color-bg-button_1: #20e0ff;
  --color-bg-button_2: #002b35;
  --color-bg-button_5: #000;
  --color-bg-button_6: #fff;

  --font-family-1: "Open Sans", sans-serif;
  --font-family-2: "Merriweather Sans", sans-serif;

}
/* Käyttö background: var(--color-bg_1); */



.color-bg_1 {background-color: var(--color-bg_1);}
.color-bg_2 {background-color: var(--color-bg_2);}

.color-bg_5 {background-color: var(--color-bg_5);}
.color-bg_6 {background-color: var(--color-bg_6);}



* {
	outline: none;
}

.btn.focus, .btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0) !important;
}

/* Wordpress editor styles start */

.entry-content img {
	margin: 0 0 1.5em 0;
	}
.alignleft, img.alignleft {
	margin-right: 1.5em;
	display: inline;
	float: left;
	}
.alignright, img.alignright {
	margin-left: 1.5em;
	display: inline;
	float: right;
	}
.aligncenter, img.aligncenter {
	margin-right: auto;
	margin-left: auto;
	display: block;
	clear: both;
	}
.alignnone, img.alignnone {
	/* none */
	}
.wp-caption {
	margin-bottom: 1.5em;
	text-align: center;
	padding-top: 5px;
	}
.wp-caption img {
	border: 0 none;
	padding: 0;
	margin: 0;
	}
.wp-caption p.wp-caption-text {
	line-height: 1.5;
	font-size: 10px;
	margin: 0;
	}
.wp-smiley {
	margin: 0 !important;
	max-height: 1em;
	}
blockquote.left {
	margin-right: 20px;
	text-align: right;
	margin-left: 0;
	width: 33%;
	float: left;
	}
blockquote.right {
	margin-left: 20px;
	text-align: left;
	margin-right: 0;
	width: 33%;
	float: right;
	}

/* Wordpress editor styles end */

/* --------------------------------------------------------------
	NORMALIZE
-------------------------------------------------------------- */
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
	
}

body {
	margin: 0;
	color: #535353;
}

a, a:focus, a:visited, a:active {color: var(--color-font_1); text-decoration: none;}
a:hover {color: #669b46; text-decoration: none;}

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

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: 700;
}

dfn {
	font-style: italic;
}

mark {
    background: #121212;
    color: #f9b659;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 0em;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: #000;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

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

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

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}




/* --------------------------------------------------------------
	PERUSSETTI
-------------------------------------------------------------- */


html, body {
	background-color: #00232b;
	color: #fff;
	font-family: var(--font-family-1);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
	font-size: 16px; /* Yleiskoko fontille, tähän suhteutettu muut */
	font-weight: 400; 
	overflow-x: hidden;	
}

.hidden, .hide { display: none !important;}
.text-left {text-align: left;}
.text-right {text-align: right;}
.text-center {text-align: center;}

section {position: relative;}

.home ol li {
	margin: 1em 0em;
}

/* --------------------------------------------------------------
	Fonttien kokoja, suhteutettuna yleiskokoon + Värejä
-------------------------------------------------------------- */

p {  font-size: 1.0em;  }

a, 
a:hover, 
a:visited, 
a:focus {
	color: var(--color-font_1);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-family-2);
	font-weight: 700;
	color: var(--color-font_1);
}


h1 {
	font-size: 3.0em;
    margin: 1.2em 0 0.7em
}

h2 {
	font-size: 1.6em;
	margin: 1.2em 0;
}

h3 {
	font-size: 1.5em;
	margin: 0.6em 0;
}

h4 {
	font-size: 1.5em;
	margin: 0.3em 0;
}

h5 {
	font-size: 1.4em;
	margin: 0.3em 0;
}

h6 {
	font-size: 1.3em;
	margin: 0.3em 0;
}


.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6 { 
	font-size: 1.2em;
}
.footer p { 
	font-size: 0.85em;
}

.woo-main-store-products h1 {
	font-size: 1.7em;
    margin: 0.8em 0 0.7em;
}

/* --------------------------------------------------------------
	Hakupalkki
-------------------------------------------------------------- */
.wp-block-search .wp-block-search__inside-wrapper input[type="search"] {
    border: 1px solid #20e0ff;
}

.hakunav {
	margin-bottom: 1em;
}
.woo-main-store-nav .hakunav input[type="search"] {
    border: 1px solid #20e0ff;
	width: calc(100% - 62px);
	padding: 0.1em 0.5em;
}

.woo-main-store-nav .hakunav button[type=submit],
.wp-block-search .wp-block-search__inside-wrapper button.wp-block-search__button {
	background: #20e0ff;
	border: 0;
    padding: 0.1em 0.5em;
}

/* --------------------------------------------------------------
	NAVIGAATIO, kts. css/nav-styles.css
-------------------------------------------------------------- */

/* --------------------------------------------------------------
	SLIDER
-------------------------------------------------------------- */


.slider {
	--slider-height: auto
	--slider-height-mobile: auto;
	position: relative;
	width: 100%;
	height: var(--slider-height);
	perspective: 1300px;
	overflow: hidden;
	border-radius: 1em;
	margin-top: 3em;
}

.slides {
	display: flex;
	transition: transform 0.5s ease;
}
.slide {
	min-width: 100%;
	transition: transform 0.3s ease;
}
.slide img {
	display: block;
	border-radius: 0px;
	cursor: pointer;
	object-fit: contain;
    object-position: center;
    width: 100%;
    height: var(--slider-height);
}

/*
.slide:hover {
	transform: rotateY(5deg);
}
*/
.slider .arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: #333;
	background: rgba(0, 0, 0, 0.8);
	border: none;
	cursor: pointer;
	padding: 0px 0px;
	border-radius: 4px;
	user-select: none;
	z-index: 10; 
}
.slider .arrow img{
    height: 30px;
    width: 30px;
	transition: ease .3s all;
}
.slider .arrow:hover img{
    transform: scale(1.1);
	transition: ease .3s all;
}
.slider .arrow.left { left: 10px; }
.slider .arrow.right { right: 10px; }

@media (max-width: 767px) {
	.slider {
		height: var(--slider-height-mobile);
	}
	.slider .slide img {
		height: var(--slider-height-mobile);
	}
	.slider .arrow {
		top: 85%;
	}
}

/* --------------------------------------------------------------
	HEADER
-------------------------------------------------------------- */

.header {
    /*background: url("img/theme/header.webp") center center no-repeat;*/
	background-image: url("img/theme/header.webp");
    background-size: cover !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	overflow: hidden;
    position: relative;
	width: 100%;
	height: 350px;
	border-radius: 2.0em;	
	margin-top: 50px;
}
@media (max-width: 991px) {
	.header {
		height: 250px;
	}
}
body.woocommerce-page .header {
    margin-bottom: 2em;
}

.header-container {
	position: relative;
	display: flex;
	justify-content: center;
	margin-bottom: 2em;
}


.nav-logo {
	left: 0;
    width: 100%;
	max-width: 300px !important;
    height: auto;
	z-index: 1;
	padding: 0.5em 0.5em 0.5em;
	/* filter: drop-shadow(1px 0px 1px #bebebe); */
}
.woocommerce .nav-logo {
	max-width: 150px;
}

@keyframes logofade{
	from {opacity: 0;}
	to {opacity: 1;}
}
#logo { 
	background: #000; 
	z-index: 10; 
	animation: logofade 0.5s 1 cubic-bezier(0.95, 0, 0.95, 0.49); 
}
#logo img {
    width: auto;
    height: auto;
    max-width: 250px;
    background: black;
    padding: 0.7em 1.2em 0.5em;
    position: absolute;
    left: 3em;
    top: 1.00em;
	border-radius: 0.7em 0.7em;
}

/* --------------------------------------------------------------
	HEADER > SOME
-------------------------------------------------------------- */
.navigaatio-1 .nav-some img {
	width: 100%;
	height: auto;
	max-width: 25px;
	max-height: 25px;
	margin: 0em 2px;
	opacity: 1;
	transition: ease .5s;
	filter: drop-shadow(1px 0px 1px #bebebe); 
}
.navigaatio-1 .nav-some img:hover {
	opacity: .6;
}

.upper-up-navigaatio-1 {
	flex-direction: row;
}
.upper-up-navigaatio-1 li {
	min-width: 80px;
	text-align: center;
}


/* --------------------------------------------------------------
	CONTENT
-------------------------------------------------------------- */

/* Wrapperin kanssa tarkasta myös ylänavin marginaalit */
.wrapper {
	padding: 0em 1em 3em;
	width: 100%;
	max-width: 1320px;
	margin: auto;
}


/* --------------------------------------------------------------
	FOOTER
-------------------------------------------------------------- */
.footer {
    background: var(--color-bg_2);
    min-height: 350px;
    position: relative;
	color: var(--color-font_6);
}
.footer .footer-inner {
	padding: 4em 0em 6em;
}

.footer .footer-inner ul {
	list-style: none;
	padding: 0;
}

.footer a, .footer a:hover, .footer a:visited, .footer a:active {
	color: var(--color-font_1);
}


.footer .footer-some {
	margin-top: 2em;
}
.footer .footer-some img {
	width: 100%;
	height: auto;
	max-width: 25px;
	max-height: 25px;
	margin: 0em 2px;
	opacity: 1;
	transition: ease .5s;
	/* filter: drop-shadow(1px 0px 1px #bebebe); */
}
.footer .footer-some img:hover {
	opacity: .6;
}


.footnote {
    position: relative;
    width: 100%;
    padding: 0.7em 0 1.0em 0;
	background-color: #000;
	font-size: 0.8em;
}

.footnote span {
	color: #fff;
}
.footnote a, .footnote a:hover, .footnote a:visited, .footnote a:active {
	color: #fff;
}
.footnote .footer-logo img {
    width: 100px;
    height: auto;
}

.footer .pixel-logo, .pixel-logo a {color: #fff !important;}
.markkinoinnista-teksti {text-align: right !important;}
.markkinoinnista-teksti img { 
	width: auto;
    height: 18px;    
	transition: ease-in-out .5s
}

.markkinoinnista-teksti img:hover {
	opacity: .7; 
	transition: ease-in-out .5s;
}    


@media (max-width: 767px){
	.markkinoinnista-teksti {
		text-align: center !important;
		margin-top: 10px;
	}
}


/* --------------------------------------------------------------
	SEARCH PAGE
-------------------------------------------------------------- */

/* --------------------------------------------------------------
	Napit, viivat buttonit & taulukot
-------------------------------------------------------------- */
hr {
	background-color: var(--hr_bg_1);
	border-width: 3px;
}


.btn {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.btn:hover {
    border: 0px solid transparent;
	background: transparent;
}

.btn-1 {
	background-color: var(--color-bg-button_1);
	color: var(--color-font_6);
	padding: 0.8em 2.8em;
}
.btn-1:hover {
    border: 1px solid var(--color-bg-button_1);
	background-color: var(--color-bg-button_1);
	color: var(--color-font_6);
	filter: brightness(120%);
}
.btn-2 {
	background-color: var(--color-bg-button_2);
	color: var(--color-font_6);
	padding: 0.8em 2.8em;
}
.btn-2:hover {
    border: 1px solid  var(--color-bg-button_2);
	background-color: var(--color-bg-button_2);
	color: var(--color-font_6);
	filter: brightness(120%);
	
}

a.btn-1,
a.btn-2 {
	color: var(--color-font_6);
}



.ajankohtaista-item .btn-1 {
	padding: 0.5em 1.4em;
	font-size: 0.9em;
	border-radius: 0em;
}


.button-max-w-500-center {
	max-width: 500px;
	margin: auto;
}

/* --------------------------------------------------------------
	BLOGI
-------------------------------------------------------------- */
section.archive.blog-home {
	width: 100%;
	max-width: 700px;
	margin: auto;
}

section.archive.blog-home h1 {
    margin-bottom: 2em;
}

section.archive.blog-home .blogi-artikkeli {
	margin: 2.5em 0em;
}
section.archive.blog-home .blogi-artikkeli hr {
	margin-bottom: 2em;
}

section.archive.blog-home .blogi-artikkeli h2 {
	font-size: 1.5em;
	font-weight: 400;
}

section.archive.blog-home .blogi-artikkeli .btn-1 {
	padding: 0.5em 1.4em;
	font-size: 0.9em;
	border-radius: 0em;
}

.pagination {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
    padding: 20px 0;
}

.pagination a,
.pagination span {
    padding: 8px 12px;
    color: #333;
    background-color: #fff;
	border: 1px solid #f2f2f2;
    border-radius: 4px;
    text-decoration: none;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pagination a:hover {
    background-color: var(--color-bg-button_1);
    color: #000;
}

.pagination .current {
    font-weight: bold;
    background-color: var(--color-bg-button_1);
    color: #000;
}


/*--------------------------------------------------------------
	Listaukset
--------------------------------------------------------------*/
ul.listaus {
    padding: 0;
    margin: 0;
    width: 100%;
}
ul.listaus li {
    width: 100%;
    list-style: none;
    padding: 0.3em 1.5em;
    margin: 0px 0px 10px;
    font-weight: bold;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
ul.listaus li:hover {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


/* --------------------------------------------------------------
	LOMAKKEET & Placeholderit
-------------------------------------------------------------- */
:placeholder,
::placeholder,
input:placeholder,
input::placeholder { color: #757575;}

.lomake-1 input,
.lomake-1 textarea,
.lomake-1 input[type=text],
.lomake-1 input[type=tel],
.lomake-1 input[type=email] {
    background: #fff;
    border: 1px solid #000;
    padding: 0.6em;
    margin: 0.4em 0em;
    border-radius: 0em;
	width: 100%;
	color: #757575;
}
.lomake-1 input[type=submit] {
	background: #20e0ff; 
	color: #000;
	border: 0px solid #000;
	border-radius: 0px;
	padding: 15px 60px;	
	width: 100%;
}

.yhteydenotto-1 input {
	border: 2px solid #20e0ff;
	border-radius: .5em;
	box-shadow: none;
	padding: .5em;
}
.yhteydenotto-1 [type="submit"] {
	background-color: #20e0ff;
	border-radius: .3em .5em;
	box-shadow: none;
	padding: .5em 1em;
}

/* --------------------------------------------------------------
	MUUT
-------------------------------------------------------------- */
/* 404 */
.error404 section.basic.e-404 {
	margin-bottom: 7em;
}

.error404 .searchform input[type="text"] {
    padding: 0.7em;
    width: 100%;
    max-width: 500px;
}


/* --------------------------------------------------------------
	COOKIE POPUP
-------------------------------------------------------------- */
#popup-cookie {
	display: none;
    width: 100%;
    height: auto;
    max-width: 400px;
    background: #F1C80C;
    color: #222;
    display: none;
    position: fixed;
    margin: auto;
    right: 1em;
    bottom: 3em;
    padding: 15px 20px 40px;
    border-radius: 0.4em 0.4em 0.4em 0.4em;
    box-shadow: 0px 0px 13px -3px #222;
    z-index: 100;
    font-size: 0.7em;
}

.cc-window.cc-banner {
    -ms-flex-align: center;
    align-items: center;
    max-width: 450px;
    width: 100%;
    border-radius: 0.6em;
    margin-bottom: 2em;
    margin-left: 1em;
}

#popup-cookie p {
	font-size: 13px;
	margin-bottom: 2em;
}
#popup-cookie p a {
	color: #222;
	text-decoration: underline;
}

#popup-cookie h3 {
    padding: 0;
    margin: 5px 0px 10px;
	font-size: 2em;
}

#popup-cookie.popup-cookie-show {
	display: block;
	bottom: 3em;
	
	animation: animaatio-cookie ease 1s;
	-webkit-animation: animaatio-cookie ease 1s;
	-moz-animation: animaatio-cookie ease 1s;
	-o-animation: animaatio-cookie ease 1s;
	-ms-animation: animaatio-cookie ease 1s;	
	}
	
@keyframes animaatio-cookie {
	0% {opacity: 0; bottom: 0em;}
	100% {opacity: 1; bottom: 3em;}
}	


#popup-cookie .sulje-popup-1 {
	width: 115px;
    height: 30px;
    background: #F1C80C;
	/* color: #35d7e3; */
	color: #222;
	border: 1px solid #222;
	border-radius: 100em;
    position: absolute;
	left: 1.4em;
    bottom: 1.3em;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
	font-size: 1.1em;
	cursor: default;
}



/* =========================================================
   SLIDER CTA - KILPAILUTA KORJAAMO NAPPI
   ========================================================= */

a.slider-cta:visited,
a.slider-cta:hover,
a.slider-cta:focus,
a.slider-cta:active {
	color: #000;
}   
.slider-cta {
    position: relative;
    z-index: 50;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;

    width: fit-content;
    min-width: 230px;

    margin: -25px auto 0;
    padding: 14px 25px;

    color: #00232b;
    background: #20e0ff;

    border: 2px solid #20e0ff;
    border-radius: 50px;

    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    text-decoration: none;

    box-shadow:
        0 7px 22px rgba(0, 0, 0, 0.30),
        0 0 20px rgba(32, 224, 255, 0.25);

    animation: slider-cta-wiggle 2.8s ease-in-out infinite;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Oikealle osoittava nuoli */

.slider-cta span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-size: 21px;
    line-height: 1;

    transition: transform 0.2s ease;
}


/* Hover */

.slider-cta:hover {
    color: #00232b;
    background: #ffffff;
    border-color: #ffffff;

    text-decoration: none;

    box-shadow:
        0 9px 28px rgba(0, 0, 0, 0.35),
        0 0 25px rgba(32, 224, 255, 0.35);
}

.slider-cta:hover span {
    transform: translateX(4px);
}


/* =========================================================
   WIGGLE
   ========================================================= */

@keyframes slider-cta-wiggle {

    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    15% {
        transform: translateY(-1px) rotate(-1.5deg);
    }

    30% {
        transform: translateY(0) rotate(1.5deg);
    }

    45% {
        transform: translateY(-1px) rotate(-1.5deg);
    }

    60% {
        transform: translateY(0) rotate(1deg);
    }

    75% {
        transform: translateY(-1px) rotate(-0.7deg);
    }
}


/* =========================================================
   MOBIILI
   ========================================================= */

@media (max-width: 781px) {

    .slider-cta {
        min-width: 205px;
        padding: 12px 21px;
        font-size: 14px;
        position: absolute;
        margin: auto;
        left: 0;
        right: 0;
        margin-top: -1em;
    }

    .slider-cta span {
        font-size: 19px;
    }
}



/* =========================================================
   KILPAILUTA HUOLTAMO, TARJOUSLOMAKE - FRONTEND
   ========================================================= */

#bp-tarjouslomake {
    --bp-bg: #00232b;
    --bp-surface: #07323b;
    --bp-surface-light: #0a3b45;
    --bp-border: rgba(255, 255, 255, 0.16);
    --bp-border-hover: rgba(32, 224, 255, 0.65);
    --bp-text: #ffffff;
    --bp-muted: rgba(255, 255, 255, 0.65);
    --bp-accent: #20e0ff;
    --bp-accent-dark: #00bddc;

    width: 100%;
    max-width: 100%;
    margin: 30px auto;
    padding: 30px;

    color: var(--bp-text);
    background: var(--bp-surface);
    border: 1px solid rgba(32, 224, 255, 0.16);
    border-radius: 14px;
    box-shadow:
        0 12px 40px rgba(0, 0, 0, 0.22),
        0 0 35px rgba(32, 224, 255, 0.03);

    box-sizing: border-box;
}

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


/* =========================================================
   LABELIT
   ========================================================= */

#bp-tarjouslomake label {
    display: block;
    margin: 0 0 7px;

    color: var(--bp-text);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
}

#bp-tarjouslomake label small {
    color: var(--bp-muted);
    font-size: 12px;
    font-weight: 400;
}


/* =========================================================
   INPUTIT
   ========================================================= */

#bp-tarjouslomake input[type="text"],
#bp-tarjouslomake input[type="email"],
#bp-tarjouslomake input[type="date"],
#bp-tarjouslomake textarea {
    display: block;
    width: 100%;
    margin: 0 0 20px;
    padding: 12px 14px;

    color: #fff;
    background: #00232b;

    border: 1px solid var(--bp-border);
    border-radius: 7px;

    outline: none;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}


/* Hover */

#bp-tarjouslomake input[type="text"]:hover,
#bp-tarjouslomake input[type="email"]:hover,
#bp-tarjouslomake input[type="date"]:hover,
#bp-tarjouslomake textarea:hover {
    border-color: rgba(32, 224, 255, 0.4);
}


/* Focus */

#bp-tarjouslomake input[type="text"]:focus,
#bp-tarjouslomake input[type="email"]:focus,
#bp-tarjouslomake input[type="date"]:focus,
#bp-tarjouslomake textarea:focus {
    border-color: var(--bp-accent);

    box-shadow:
        0 0 0 2px rgba(32, 224, 255, 0.10),
        0 0 15px rgba(32, 224, 255, 0.06);

    background: #032a33;
}


/* Placeholder */

#bp-tarjouslomake input::placeholder,
#bp-tarjouslomake textarea::placeholder {
    color: rgba(255, 255, 255, 0.42);
    opacity: 1;
}


/* Date */

#bp-tarjouslomake input[type="date"] {
    min-height: 47px;
}


/* =========================================================
   TEKSTIALUE
   ========================================================= */

#bp-tarjouslomake textarea {
    min-height: 140px;
    resize: vertical;
}


/* =========================================================
   PIENI TEKSTI
   ========================================================= */

#bp-tarjouslomake small {
    display: block;

    margin-top: -14px;
    margin-bottom: 20px;

    color: var(--bp-muted);
    font-size: 12px;
    line-height: 1.4;
}


/* =========================================================
   BOOTSTRAP-RIVIT
   ========================================================= */

#bp-tarjouslomake .row {
    margin-left: -8px;
    margin-right: -8px;
}

#bp-tarjouslomake .row > [class*="col-"] {
    padding-left: 8px;
    padding-right: 8px;
}


/* =========================================================
   PAIKKAKUNNAT
   ========================================================= */

#bp-paikkakunta-input {
    margin-bottom: 8px !important;
}

#bp-paikkakunta-valinnat {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;

    margin: 0 0 25px;
}


/* =========================================================
   HUOLTOTYYPIT
   ========================================================= */

#bp-huoltotyypit {
    margin: 25px 0 30px;
    padding: 22px;

    background: rgba(0, 35, 43, 0.65);

    border: 1px solid rgba(32, 224, 255, 0.14);
    border-radius: 10px;
}


/* Otsikko */

#bp-huoltotyypit legend {
    width: 100%;
    margin: 0 0 18px !important;
    padding: 0;

    color: var(--bp-accent);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.45;
}

#bp-huoltotyypit legend div {
    margin-top: 5px;

    color: var(--bp-muted);
    font-size: 12px !important;
    font-weight: 400;
}


/* =========================================================
   KATEGORIAT
   ========================================================= */

#bp-huoltotyypit .bp-category {
    margin-bottom: 9px;
}


/* =========================================================
   PÄÄKATEGORIANAPIT
   ========================================================= */

#bp-huoltotyypit .bp-cat-btn {
    position: relative;

    display: block;
    width: 100%;
    padding: 12px 15px;

    color: #fff;
    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 7px;

    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;

    cursor: pointer;

    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Hover */

#bp-huoltotyypit .bp-cat-btn:hover {
    color: var(--bp-accent);

    background: rgba(32, 224, 255, 0.06);

    border-color: rgba(32, 224, 255, 0.5);

    box-shadow:
        0 0 12px rgba(32, 224, 255, 0.05);
}


/* Valittu */

#bp-huoltotyypit .bp-cat-btn.active,
#bp-huoltotyypit .bp-cat-btn.selected {
    color: #00232b;

    background: var(--bp-accent);
    border-color: var(--bp-accent);

    box-shadow:
        0 0 15px rgba(32, 224, 255, 0.18);
}


/* =========================================================
   ALAKATEGORIAT
   ========================================================= */

#bp-huoltotyypit .bp-subcats {
    margin-top: 6px;
	margin-left: 30px;
    padding: 7px;

    background: rgba(255, 255, 255, 0.035);

    border: 2px solid rgba(32, 224, 255, 0.45);
    border-radius: 0 7px 7px 0;
}

#bp-huoltotyypit .bp-subcats.hidden {
    display: none;
}


/* Alavalinnanappi */

#bp-huoltotyypit .bp-sub-btn {
    display: block;
    width: 100%;
    margin: 2px 0;
    padding: 9px 11px;

    color: rgba(255, 255, 255, 0.82);
    background: transparent;

    border: 1px solid transparent;
    border-radius: 5px;

    font-size: 13px;
    font-weight: 500;
    text-align: left;

    cursor: pointer;

    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}

#bp-huoltotyypit .bp-sub-btn:hover {
    color: var(--bp-accent);

    background: rgba(32, 224, 255, 0.06);

    border-color: rgba(32, 224, 255, 0.18);
}


/* Valittu alavalinta */

#bp-huoltotyypit .bp-sub-btn.active,
#bp-huoltotyypit .bp-sub-btn.selected {
    color: #00232b;
    background: var(--bp-accent);
    border-color: var(--bp-accent);
}


/* =========================================================
   LISÄTIETOKENTÄT
   ========================================================= */

#bp-huoltotyypit .bp-sub-note {
    margin: 6px 0 8px !important;
    padding: 10px 12px !important;

    color: #fff !important;
    background: #00232b !important;

    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-radius: 6px !important;

    font-size: 13px !important;
}

#bp-huoltotyypit .bp-sub-note:focus {
    border-color: var(--bp-accent) !important;

    box-shadow:
        0 0 0 2px rgba(32, 224, 255, 0.08) !important;
}

#bp-huoltotyypit .bp-sub-note.hidden {
    display: none;
}


/* =========================================================
   HIDDEN-KENTÄT
   ========================================================= */

#bp-tarjouslomake input[type="hidden"] {
    display: none;
}


/* =========================================================
   LÄHETÄ-NAPPI
   ========================================================= */

#bp-tarjous-form > button[type="submit"] {
    display: block;
    width: 100%;
    min-height: 52px;

    margin-top: 10px;
    padding: 13px 20px;

    color: #00232b;
    background: var(--bp-accent);

    border: 1px solid var(--bp-accent);
    border-radius: 7px;

    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;

    cursor: pointer;

    box-shadow:
        0 0 18px rgba(32, 224, 255, 0.12);

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.15s ease;
}


/* Hover */

#bp-tarjous-form > button[type="submit"]:hover {
    color: #00232b;
    background: #63eaff;
    border-color: #63eaff;

    box-shadow:
        0 0 25px rgba(32, 224, 255, 0.22);

    transform: translateY(-1px);
}


/* Active */

#bp-tarjous-form > button[type="submit"]:active {
    transform: translateY(0);
}


/* =========================================================
   VASTAUS
   ========================================================= */

#bp-tarjous-vastaus {
    margin-top: 20px;
    color: #fff;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 767px) {

    #bp-tarjouslomake {
        margin: 20px auto;
        padding: 20px 16px;

        border-radius: 10px;
    }


    #bp-tarjouslomake .row {
        margin-left: 0;
        margin-right: 0;
    }

    #bp-tarjouslomake .row > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }


    #bp-huoltotyypit {
        margin-top: 20px;
        padding: 16px;
    }


    #bp-huoltotyypit .row {
        margin-left: 0;
        margin-right: 0;
    }

    #bp-huoltotyypit .row > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }


    #bp-huoltotyypit legend {
        font-size: 15px;
    }


    #bp-tarjouslomake input[type="text"],
    #bp-tarjouslomake input[type="email"],
    #bp-tarjouslomake input[type="date"],
    #bp-tarjouslomake textarea {
        font-size: 16px;
    }
}


/* =========================================================
   PIENET PUHELIMET
   ========================================================= */

@media (max-width: 400px) {

    #bp-tarjouslomake {
        padding: 16px 12px;
    }

    #bp-huoltotyypit {
        padding: 13px;
    }

    #bp-huoltotyypit .bp-cat-btn {
        padding: 11px 13px;
    }

    #bp-huoltotyypit .bp-sub-btn {
        padding: 9px 10px;
    }
}

/* --------------------------------------------------------------
	MOBILE / RESPONSIVE
-------------------------------------------------------------- */

/* ---------------
	Scale Up
--------------- */

/* Mini devices ( 576 px and up) */	
@media (min-width: 576px) { }

/* Small devices (tablets, 768px and up) */	
@media (min-width: 768px) {	}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) { }

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1201px) { }



/* ---------------
	Scale Down
--------------- */

/* Large devices (desktops, 1200px and down) */
@media (max-width: 1200px) { }

/* Medium devices (desktops, 992px and down) */
@media (max-width: 991px) { 

	h1 {
		font-size: 2.3em;
		margin: 1.2em 0 0.7em
	}	

}

/* Small devices (tablets, 767px and down) */	
@media (max-width: 767px) { }

/* Micro devices (575px and down) */	
@media (max-width: 575px) { }




/* YLIAJOT */

@media (min-width: 782px) { 
	.hide-pc {display: none !important;} 
}

@media (max-width: 781px) { 
	.text-center-mobile { text-align: center !important;}
	.hide-mobile {display: none !important;} 
	.show-mobile-flex {display: flex !important;}
	.show-mobile-block {display: inline-block !important;} 
}

