/*
Theme Name: Villabutiken
Author: Sunfish AB
Author URI: http://www.sunfish.se
*/

/* html5doctor.com Reset Stylesheet \\v1.6.1 \\ Last Updated: 2010-09-17 \\ http://richclarkdesign.com \\ @rich_clark */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section { display:block; }
nav ul { list-style:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
/* tables still need cellspacing="0" in the markup */
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }

/*
 *
 * Base Typography 
 *
 */
body { font:16px/1.5 sans-serif; *font-size:small;  background: url(images/worn_dots.png);}
select, input, textarea, button { font:99% sans-serif;}
pre, code, kbd, samp { font-family: monospace, sans-serif; }

/*
 *
 * Base Styles 
 *
 */
body, select, input, textarea { 
  /* #444 looks better than black: twitter.com/H_FJ/statuses/11800719859 */ 
  color: #444; 
  /* set your base font here, to apply evenly */
  font-family: 'Source Sans Pro', sans-serif;
}
/* Headers (h1,h2,etc) have no default font-size or margin,
   you'll want to define those yourself. */ 
h1,h2,h3,h4,h5,h6 { 
	font-weight: bold; 
	color: #222;
	margin-bottom: 0.5em;
}
/* always force a scrollbar in non-IE */ 
html { overflow-y: scroll; }
/* Accessible focus treatment: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: none; }
a, a:active, a:visited { color: #607890; }
a:hover { color: #036; }
ul, ol { margin-left: 1.8em; }
ol { list-style-type: decimal; }
/* Remove margins for navigation lists */
nav ul, nav li { margin: 0; } 
small { font-size: 85%; }
strong, th { font-weight: bold; color: #222;}
td, td img { vertical-align: middle; } 
sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }
pre { 
  padding: 15px; 
  /* www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap/ */
  white-space: pre; /* CSS2 */
  white-space: pre-wrap; /* CSS 2.1 */
  white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word; /* IE */
}
textarea { overflow: auto; } /* thnx ivannikolic! www.sitepoint.com/blogs/2010/08/20/ie-remove-textarea-scrollbars/ */
.ie6 legend, .ie7 legend { margin-left: -7px; } /* thnx ivannikolic! */
/* align checkboxes, radios, text inputs with their label
   by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css  */
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button { cursor: pointer; }
/* webkit browsers add a 2px margin outside the chrome of form elements */  
button, input, select, textarea { margin: 0; }
/* colors for form validity */
input:valid, textarea:valid   {  }
input:invalid, textarea:invalid { 
      border-radius: 1px;
    -moz-box-shadow: 0px 0px 5px red; 
 -webkit-box-shadow: 0px 0px 5px red; 
         box-shadow: 0px 0px 5px red;
}
.no-boxshadow input:invalid, 
.no-boxshadow textarea:invalid { background-color: #f0dddd; }
/* These selection declarations have to be separate.
   No text-shadow: twitter.com/miketaylr/status/12228805301 
   Also: hot pink. */
::-moz-selection{ background: #0e71b2; color:#fff; text-shadow: none; }
::selection { background:#0e71b2; color:#fff; text-shadow: none; } 
/*  j.mp/webkit-tap-highlight-color */
a:link { -webkit-tap-highlight-color: #0e71b2; } 
/* make buttons play nice in IE:    
   www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {width: auto; overflow: visible;}
/* bicubic resizing for non-native sized IMG: 
   code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
.ie7 img {-ms-interpolation-mode: bicubic;}


/*
 *
 * Layout Styles 
 *
 */

h1 {
	font-size: 42px;
	color: #222;
	line-height: 46px;
}

h2 {
	font-size: 28px;
	font-weight: 300;
	color: #0e71b2;
}



#content h1 {
	margin-bottom: 0;
}

h3 {
	font-size: 21px;
}

h4 {
	font-size: 18px;
}

p {
	margin-bottom: 1em;
}

p+.gallery {
	margin-top: 2em;
}

.nivoSlider {
    background:url(images/ajax-loader.gif) no-repeat 50% 50%; 
}
.nivoSlider img {
    display:none;
}


.products {
	margin-top: 40px;
}

.product {
	overflow: hidden;
	height: 230px;
}

.product-image {
	float: left;
	width: 320px;
	margin-right: 40px;
}

.search .product-image {
	margin-bottom: 40px;
}

.product .product-details {
	margin-left: 360px;
}

.product h2  {
	margin-bottom: 0.2em;
	margin-top: 0.5em;
}

.product h2 a {
	text-decoration: none;
}


.tjanst h4 {
	font-size: 12px;
	line-height: 18px;
	
}


.tjanst p {
	font-size: 12px;
	line-height: 18px;
	
}

#page {
	width: 980px;
	margin: 0 auto;
	background: white;

	-moz-box-shadow: 0 0 30px #888;
	-webkit-box-shadow: 0 0 30px #888;
	box-shadow: 0 0 30px #888;
}

.home .entry-content p {
	max-width: 900px;
}


 #slogan {
	margin: 40px 0 90px 0;
	
 }
 
 #slogan h3{
	font-size: 26px;
	font-weight: 700;
	color: #333;
	line-height: 30px;
	width: 665px;
	margin-bottom: 5px;
 }
 
 #slogan h3 em {
	font-style: normal;
	color: #0e71b2;
	margin: 0;
	
 }
 
#slogan h3 a:link, #slogan h3 a:visited {
	color: #0e71b2;
	text-decoration: none;
}

#slogan h3 a:hover, #slogan h3 a:active {
	color: #0e5b8e;
}
 
 #slogan p {
	font-size: 16px;
	width: 665px;
 }
 
 #slogan .call-to-action {
	float: right;
	width: 195px;
	height: 66px;
	background: url('images/call-to-action.png') no-repeat top center;
	margin-top: 5px;
 }
 
 #slogan .call-to-action:hover {
	background-position: 0 -66px;
 }
 
 #slogan .call-to-action:active {
	background-position: 0 -132px;
 }
 
 .title-divider {
	text-transform: uppercase;
	color: #333;
	border-bottom: 1px solid #dad7d7;
	margin: 40px 0 20px;
	line-height: 26px;
	letter-spacing: 1px;
	font-weight: 300;
 }
 
 .tjanst {
	width: 195px;
	margin-right: 40px;
	float: left;
 }
 
 .last {
	margin-right: 0;
 }

  .tjanst h4 {
	text-transform: uppercase;
	color: #333;
	line-height: 26px;
	font-weight: 300;
	letter-spacing: 1px;
  }
  
  .tjanst p {
	color: #9b9595;
  }
  
  #colophon {
	height: 40px;
	line-height: 40px;
	background: #eee;
	border-top: 1px solid #DEDDDA;
  }
  
  #colophon img {
	float: left;
  }	
  
#map_container {
	position: relative;
}

#contact-info {
	position: absolute;
	top: 350px;
	right: 40px;
	
	width: 155px;
	height: 160px;
	
	background: #fff;
	
	padding: 20px;
	
	-moz-box-shadow: 0 0 20px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.2);
	box-shadow: 0 0 20px rgba(0,0,0,0.2);
}

#contact-info h3 {
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #0c71b5;
	line-height: 24px;
	margin-left: -1px;
}


#contact-info p {
	font-size: 14px;
}


.gallery  {
	background: #f0f0f0;
	margin-bottom: 2em;
	padding: 40px 30px 30px 30px;
}

.gallery .gallery-item {
	float: left;
	width: 25%;
	margin-bottom: 10px;
	text-align: center;
}
  
.page_thumbnail {
	width: 980px;
	height: 300px;
}


.nivo-caption p {
	font-family: Helvetica, sans-serif;
}
 /* .copy-text {float: left;};*/
  

  

 /*
 *
 * Nonsemantic Base Styles 
 *
 */
/* for image replacement */
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
/* Hide for both screenreaders and browsers
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display: none; visibility: hidden; } 
/* Hide only visually, but have it available for screenreaders 
   www.webaim.org/techniques/css/invisiblecontent/  &  j.mp/visuallyhidden  */
.visuallyhidden { position: absolute !important;    
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px); }
/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }
/* >> The Magnificent CLEARFIX: Updated to prevent margin-collapsing on child elements << j.mp/bestclearfix */
.clearfix:before, .clearfix:after {
  content: "\0020"; display: block; height: 0; visibility: hidden;	
} 
.clearfix:after { clear: both; }
/* Fix clearfix: blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix { zoom: 1; }

/*
 *
 * Media queries for responsive design
 * These follow after primary styles so they will successfully override. 
 *
 */
@media all and (orientation:portrait) { 
  /* Style adjustments for portrait mode goes here */
}
@media all and (orientation:landscape) { 
  /* Style adjustments for landscape mode goes here */
}
/* Grade-A Mobile Browsers (Opera Mobile, iPhone Safari, Android Chrome)  
   Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {  
  /* Uncomment if you don't want iOS and WinMobile to mobile-optimize the text for you
     j.mp/textsizeadjust 
  html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
}



 
 

/*
 *
 * Base Print Styles, inline to save the HTTP request
 *
 */
@media print {
  * { background: transparent !important; color: #444 !important; text-shadow: none !important; }
  a, a:visited { color: #444 !important; text-decoration: underline; }
  a:after { content: " (" attr(href) ")"; } 
  abbr:after { content: " (" attr(title) ")"; }
  .ir a:after { content: ""; }  /* Don't show links for images */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */ 
  tr, img { page-break-inside: avoid; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }
}

/*
 *
 * Structure
 *
 */
#page {
	display: block;
}
#primary {
	float: left;
	margin: 0;
	width: 590px;
}

#primary.wide {
	width: 100%;
}

#content {
	margin: 0;
	padding: 40px;
}

#main .widget-area {
	float: right;
	overflow: hidden;
	width: 310px;
	padding: 20px;
	margin: 75px 40px 40px 0;
	background: #f0f0f0;
}
#colophon {
	clear: both;
	display: block;
	width: 100%;
}

#breadcrumbs {
	font-size: 12px;
	margin-bottom: 10px;
}

.entry-content ul {
	margin-bottom: 2em;
}

.entry-content p {
	max-width: 680px;
}

/* Increase the size of the content area for templates without sidebars */
.full-width #content,
.image-attachment #content,
.error404 #content {
	margin: 0;
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
}
.alignright {
	display: inline;
	float: right;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}


/*
 *
 * Header
 *
 */

#branding {

}


#site-title{
	text-align: center;
}

 
#site-title img{
	margin: 40px auto 0;
}

#site-description {
	font-size: 1em;
	font-weight: normal;
	margin: 0 0 40px;
	text-align: center;
	color: #929292;
}



/*
 *
 * Menu
 *
 */
 
 
 
#access {
	background: #eee;
	display: block;
	float: none;
	margin: 0 auto;
	width: 100%;
	height: 45px;
	border-top: 1px solid #deddda;
	border-bottom: 1px solid #c8c3c4;
	font-size: 12px;
}
#access ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
	text-align: center;
}
#access li {
	display: inline;
	position: relative;
}
#access a {
	display: inline-block;
	line-height: 45px;
	padding: 0 1.5em;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #555;
}
#access ul ul {
	box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	display: none;
	float: left;
	position: absolute;
	top: 29px;
	left: 0;
	z-index: 99999;
}
#access ul ul ul {
	top: 0;
	left: 0;
}
#access ul ul li {
	width: 100%;
	right: 0;
	text-align: left;
}
#access ul ul a {
	background: #318fcc;
	color: #fff;
	line-height: 45px;
	padding: 0 2.5em;
	white-space:nowrap;
	display: block;
}
#access li:hover > a,
#access ul ul :hover > a {
	background: #0e71b2;
	color: #fff;
}
#access ul ul a:hover {
	background: #0b649f;
}
#access ul li:hover > ul {
	display: block;
}


/*
 *
 * Content
 *
 */
#content nav {
	display: block;
	overflow: hidden;
}
#content nav .nav-previous {
	float: left;
	width: 50%;
}
#content nav .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}
#content #nav-above {
	display: none;
}
.paged #content #nav-above,
.single #content #nav-above {
	display: block;
}
#nav-below {
	margin: 1em 0 0;
}
.page-link {
	margin: 0 0 1em;
}

.wpcf7-form p {
	font-size: 12px;
	margin-bottom: 0.5em;
}

.wpcf7-form-control-wrap {
	display: block;
}
.wpcf7-form-control-wrap textarea,
.wpcf7-form-control-wrap input[type=text]{
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
			width: 100%;
}

.widget-title {
	margin-bottom: 1em;
}


/*
 *
 * Images
 *
 */
/*
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img,
.widget-area img {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
img.alignleft {
	margin-right: 1em;
}
img.alignright {
	margin-left: 1em;
}
.wp-caption {
	padding: .5em;
	text-align: center;
}
.wp-caption img {
	margin: .25em;
}
.wp-caption .wp-caption-text {
	margin: .5em;
}

/* Forms - Class for labelling required form items */
.required {
	color: #cc0033;
}


/*
 *
 * Comments
 *
 */
article.comment {
	display: block;
}
#respond input[type=text] {
	float: left;
	margin: 0 1em 0 0;
	width: 60%;
}
#respond .comment-form-comment label {
	display: none;
}
#respond textarea {
	margin: 0 1em 1em 0;
	float: left;
	width: 80%;
}
#respond .form-allowed-tags {
	clear: both;
	width: 80%;
}
#respond .form-allowed-tags code {
	display: block;
}


/*
 *
 * Footer
 *
 */
#colophon {
	padding: 5px 0 0 0;
	font-size: 12px;
}