/* =Widgets
----------------------------------------------- */

.widget {
	margin: 0 0 1.5em;
}
/* Make sure select elements fit in widgets */
.widget select {
	max-width: 100%;
}

.textwidget p:first-child{
	margin-top:0;
}

.textwidget p:last-child{
	margin-bottom:0;
}

/* =General Widget Styling
----------------------------------------------- */

.widget {

	word-wrap: break-word;

	img,
	embed,
	iframe,
	object {
		max-width: 100%;
	}
	
	a.button {
		display:inline-block;
		padding: 7px 45px;

		.rounded(4px);

		font-size: 0.95em;
		text-decoration:none;
		color: #54770f;
		text-shadow: 0 1px 0 rgba(255,255,255,0.75);
		font-weight: 500;

		.box-shadow(~"inset 0 1px 0 rgba(255,255,255,0.75), inset 0 -1px 0 rgba(0,0,0,0.05), 0 1px 2px rgba(0,0,0,0.1)");
		.button-style(#bcdf74);

		&:hover {
			.button-style(lumlighten(#bcdf74, 1.25%));
		}
	}

	.button-container.align-center{
		text-align: center;
	}

	.button-container.align-left{
		text-align: left;
	}

	.button-container.align-right{
		text-align: right;
	}

	.button-container.align-full .button{
		display: block;
		text-align: center;
	}
}

.widget_call-to-action {
	position: relative;
	padding: 25px 30px 23px 30px;
	background: #f2efef;
	.rounded(4px);
	border: 1px solid #e4e2e2;

	h2.cta-headline{
		margin:0 0 0.25em 0;
		color: #444;
		font-weight: 500;
	}

	p.cta-sub-text{
		margin:0;
		color: #666;
	}

	a.button {
		position: absolute;
		top: 50%;
		right: 30px;
		margin-top: -19px; /* This should be half the height of the button */
	}
}

/* Responsive styles for the call to action widget */
@media (max-width:680px) {
	body.responsive .widget_call-to-action {
		a.button {
			position: static;
			margin-top: 25px;
			display:block;
			text-align:center;
		}
	}
}

.widget_siteorigin-list {
	ul {

		li {
			margin-bottom: 0.4em;
		}

		li:last-child {
			margin-bottom: 0;
		}
	}
}

.widget_headline {

	.widget-title{
		margin-bottom: 0;
		padding: 30px 0;
		border: solid #E6E6E6;
		border-width: 1px 0;

		span {
			display: block;
			line-height: 1.3em;
		}

		.size-medium {
			font-size: 130%;
		}

		.size-large {
			font-size: 160%;
		}

		.size-extra-large {
			font-size: 190%;
		}
		
		.align-left{
			text-align: left;
		}

		.align-center{
			text-align: center;
		}

		.align-right{
			text-align: right;
		}
	}
	
}

.widget_icon-text {
	font-size: 0.95em;
	text-align:center;

	.feature-icon {
		display: inline-block;
		line-height: 0;
	}

	.widget-title {
		margin: 15px 0;
	}
}