@charset "UTF-8";
/* Bitters 0.10.0 http://bitters.bourbon.io Copyright 2013–2014 thoughtbot, inc. MIT License */
button, input[type="submit"] { -webkit-font-smoothing: antialiased; background-color: #477DCA; border-radius: 3px; color: white; display: inline-block; font-size: 1em; font-weight: bold; line-height: 1; padding: 0.75em 1em; text-decoration: none; }
button:hover, input[type="submit"]:hover { background-color: #2c5999; color: white; }
button:disabled, input[type="submit"]:disabled { cursor: not-allowed; opacity: 0.5; }

body { -webkit-font-smoothing: antialiased; background-color: white; color: #333; font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; font-size: 1em; line-height: 1.5; }

h1, h2, h3, h4, h5, h6 { font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; line-height: 1.25; margin: 0; text-rendering: optimizeLegibility; }

h1 { font-size: 2.25em; }

h2 { font-size: 2em; }

h3 { font-size: 1.75em; }

h4 { font-size: 1.5em; }

h5 { font-size: 1.25em; }

h6 { font-size: 1em; }

p { margin: 0 0 0.75em; }

a { -webkit-transition: color 0.1s linear; -moz-transition: color 0.1s linear; transition: color 0.1s linear; color: #477DCA; text-decoration: none; }
a:hover { color: #2c5999; }
a:active, a:focus { color: #2c5999; outline: none; }

hr { border-bottom: 1px solid #ccc; border-left: none; border-right: none; border-top: none; margin: 1.5em 0; }

blockquote { border-left: 2px solid #ccc; color: #595959; margin: 1.5em 0; padding-left: 0.75em; }

cite { color: #737373; font-style: italic; }
cite:before { content: "\2014 \00A0"; }

fieldset { background: #e6e6e6; border: 1px solid #ccc; margin: 0 0 0.75em 0; padding: 1.5em; }

input, label, select { display: block; font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; font-size: 1em; }

label { font-weight: bold; margin-bottom: 0.375em; }
label.required:after { content: "*"; }
label abbr { display: none; }

textarea, input[type="email"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="url"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="time"], input[type="week"], select[multiple=multiple] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: border-color; -moz-transition: border-color; transition: border-color; background-color: white; border-radius: 3px; border: 1px solid #ccc; box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06); font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; font-size: 1em; margin-bottom: 0.75em; padding: 0.5em 0.5em; width: 100%; }
textarea:hover, input[type="email"]:hover, input[type="number"]:hover, input[type="password"]:hover, input[type="search"]:hover, input[type="tel"]:hover, input[type="text"]:hover, input[type="url"]:hover, input[type="color"]:hover, input[type="date"]:hover, input[type="datetime"]:hover, input[type="datetime-local"]:hover, input[type="month"]:hover, input[type="time"]:hover, input[type="week"]:hover, select[multiple=multiple]:hover { border-color: #b3b3b3; }
textarea:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="url"]:focus, input[type="color"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, select[multiple=multiple]:focus { border-color: #477DCA; box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 5px rgba(55, 112, 192, 0.7); outline: none; }

textarea { resize: vertical; }

input[type="search"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; -o-appearance: none; appearance: none; }

input[type="checkbox"], input[type="radio"] { display: inline; margin-right: 0.375em; }

input[type="file"] { padding-bottom: 0.75em; width: 100%; }

select { margin-bottom: 1.5em; max-width: 100%; width: auto; }

table { border-collapse: collapse; margin: 0.75em 0; table-layout: fixed; width: 100%; }

th { border-bottom: 1px solid #a6a6a6; font-weight: bold; padding: 0.75em 0; text-align: left; }

td { border-bottom: 1px solid #ccc; padding: 0.75em 0; }

tr, td, th { vertical-align: middle; }

ul, ol { margin: 0; padding: 0; list-style-type: none; }
dl { margin-bottom: 0.75em; }
dl dt { font-weight: bold; margin-top: 0.75em; }
dl dd { margin: 0; }

button, input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; -o-appearance: none; appearance: none; border: none; cursor: pointer; user-select: none; vertical-align: middle; white-space: nowrap; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/** 1. Set default font family to sans-serif. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove default margin. */
body { margin: 0; }

/* HTML5 display definitions ========================================================================== */
/** Correct `block` display not defined for any HTML5 element in IE 8/9. Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox. Correct `block` display not defined for `main` in IE 11. */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/** 1. Correct `inline-block` display not defined in IE 8/9. 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. */
audio, canvas, progress, video { display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ }

/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */
audio:not([controls]) { display: none; height: 0; }

/** Address `[hidden]` styling not present in IE 8/9/10. Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. */
[hidden], template { display: none; }

/* Links ========================================================================== */
/** Remove the gray background color from active links in IE 10. */
a { background-color: transparent; }

/** Improve readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }

/* Text-level semantics ========================================================================== */
/** Address styling not present in IE 8/9/10/11, Safari, and Chrome. */
abbr[title] { border-bottom: 1px dotted; }

/** Address style set to `bolder` in Firefox 4+, Safari, and Chrome. */
b, strong { font-weight: bold; }

/** Address styling not present in Safari and Chrome. */
dfn { font-style: italic; }

/** Address variable `h1` font-size and margin within `section` and `article` contexts in Firefox 4+, Safari, and Chrome. */
h1 { font-size: 2em; margin: 0.67em 0; }

/** Address styling not present in IE 8/9. */
mark { background: #ff0; color: #000; }

/** Address inconsistent and variable font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

/* Embedded content ========================================================================== */
/** Remove border when inside `a` element in IE 8/9/10. */
img { border: 0; }

/** Correct overflow not hidden in IE 9/10/11. */
svg:not(:root) { overflow: hidden; }

/* Grouping content ========================================================================== */
/** Address margin not present in IE 8/9 and Safari. */
figure { margin: 1em 40px; }

/** Address differences between Firefox and other browsers. */
hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }

/** Contain overflow in all browsers. */
pre { overflow: auto; }

/** Address odd `em`-unit font size rendering in all browsers. */
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }

/* Forms ========================================================================== */
/** Known limitation: by default, Chrome and Safari on OS X allow very limited styling of `select`, unless a `border` property is set. */
/** 1. Correct color not being inherited. Known issue: affects color of disabled elements. 2. Correct font properties not being inherited. 3. Address margins set differently in Firefox 4+, Safari, and Chrome. */
button, input, optgroup, select, textarea { color: inherit; /* 1 */ font: inherit; /* 2 */ margin: 0; /* 3 */ }

/** Address `overflow` set to `hidden` in IE 8/9/10/11. */
button { overflow: visible; }

/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. Correct `select` style inheritance in Firefox. */
button, select { text-transform: none; }

/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. */
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ }

/** Re-set default cursor for disabled elements. */
button[disabled], html input[disabled] { cursor: default; }

/** Remove inner padding and border in Firefox 4+. */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/** Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
input { line-height: normal; }

/** It's recommended that you don't attempt to style these elements. Firefox's implementation doesn't respect box-sizing, padding, or width.  1. Address box sizing set to `content-box` in IE 8/9/10. 2. Remove excess padding in IE 8/9/10. */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Fix the cursor style for Chrome's increment/decrement buttons. For certain `font-size` values of the `input`, it causes the cursor style of the decrement button to change from `default` to `text`. */
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Address `appearance` set to `searchfield` in Safari and Chrome. 2. Address `box-sizing` set to `border-box` in Safari and Chrome (include `-moz` to future-proof). */
input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }

/** Remove inner padding and search cancel button in Safari and Chrome on OS X. Safari (but not Chrome) clips the cancel button when the search input has padding (and `textfield` appearance). */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Define consistent border, margin, and padding. */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 1. Correct `color` not being inherited in IE 8/9/10/11. 2. Remove padding so people aren't caught out if they zero out fieldsets. */
legend { border: 0; /* 1 */ padding: 0; /* 2 */ }

/** Remove default vertical scrollbar in IE 8/9/10/11. */
textarea { overflow: auto; }

/** Don't inherit the `font-weight` (applied by a rule above). NOTE: the default cannot safely be changed in Chrome and Safari on OS X. */
optgroup { font-weight: bold; }

/* Tables ========================================================================== */
/** Remove most spacing between table cells. */
table { border-collapse: collapse; border-spacing: 0; }

td, th { padding: 0; }

.holder { max-width: 60em; margin-left: auto; margin-right: auto; }
.holder:after { content: ""; display: table; clear: both; }
@media screen and (max-width: 960px) { .holder { width: 700px; } }
@media screen and (max-width: 686px) { .holder { padding: 0 5%; width: 90%; } }

h1 { margin: 0 0 50px 0; font-size: 36px; }

a { font-weight: bold; }

.sliding-menu-button { float: left; }

#header { height: 60px; background: #b63131; color: #fff; }
#header a img { width: 61px; height: 61px; background: #c53535; border-right: 1px solid #da4343; border-left: 1px solid #da4343; border-bottom: 1px solid #c53535; margin-right: 20px; float: left; }
#header a img:hover { opacity: .9; }
#header #logo a { line-height: 58px; font-size: 16px; color: #fff; float: left; }
@media screen and (max-width: 686px) { #header #logo a { display: none; } }

#main-navigation { float: right; }
#main-navigation li { line-height: 58px; margin-left: 20px; display: inline-block; font-size: 16px; font-weight: bold; }
#main-navigation a { color: #ffd0d0; }
#main-navigation a:hover { color: #fff; }

body.internal-content #header img { width: 60px; height: 60px; border-bottom: none; }

html { min-height: 100%; /* Fix footer */ position: relative; /* Fix footer */ }

.main { padding-bottom: 260px; /* Fix footer */ }

footer { width: 100%; border-top: 5px solid #ccc; background: #333; padding: 30px 0; text-align: center; font-size: 14px; color: #fff; position: absolute; bottom: 0; }
footer p { width: 50%; font-weight: bold; margin: 20px auto; color: #ccc; }

.ft-support { color: #808080; }
.ft-support a img { width: 150px; margin: 15px auto; }
.ft-support a img:hover { opacity: .9; }

.sliding-menu-button { background: url("../../images/sidemenu-icon.png") 0 0 no-repeat !important; display: none; cursor: pointer; font-size: 1em; margin: 7px 15px 0 0; padding: 1em; position: relative; outline: none; }
@media screen and (max-width: 960px) { .sliding-menu-button { display: block; } }

.sliding-menu-content { position: fixed; top: 0px; right: auto; bottom: 0px; left: 0px; height: 100%; width: 220px; -webkit-transform: translateX(-220px); -moz-transform: translateX(-220px); -ms-transform: translateX(-220px); -o-transform: translateX(-220px); transform: translateX(-220px); -webkit-transition: all 0.25s linear; -moz-transition: all 0.25s linear; transition: all 0.25s linear; background: #404040; z-index: 999999; overflow-y: scroll; -webkit-overflow-scrolling: touch; border-right: 7px solid #fff; }
.sliding-menu-content h4 { padding: 10px; background: #c53535; font-size: 20px; color: #fff; }
.sliding-menu-content h5 { padding: 10px; background: #999; font-size: 16px; color: #fff; }
.sliding-menu-content li a { border-bottom: 1px solid #333; color: #fff; display: block; font-weight: bold; padding: 10px; }
.sliding-menu-content li a:hover { background-color: #333; }
.sliding-menu-content.is-visible { -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); }

.menu-screen { position: fixed; top: 0px; right: 0px; bottom: 0px; left: 0px; -webkit-transition: all 0.15s ease-out 0s; -moz-transition: all 0.15s ease-out 0s; transition: all 0.15s ease-out 0s; background: #333; opacity: 0; visibility: hidden; z-index: 999998; }
.menu-screen.is-visible { opacity: .4; visibility: visible; }

#banner { border-top: 1px solid #da4343; background: #c53535; padding: 70px 0; text-align: center; color: #fff; }
#banner .holder { position: relative; }
#banner h2 { font-size: 36px; margin: 0 0 30px 0; line-height: 45px; }
#banner h2 span { margin-bottom: -45px; font-size: 31px; font-weight: 300; display: block; color: #FBE3E4; }

.banner-description { font-size: 1.25em; line-height: 30px; color: #FBE3E4; margin: 0; }

#main-call { background: #333; text-align: center; padding: 30px 0 0 0; }
#main-call li { display: inline-block; margin: 0 15px -43px 0; display: inline-block; }
#main-call li a { width: 134px; height: 155px; background: url("/images/call-bg.png") 0 0 no-repeat; color: #c53535; display: inline-block; font-size: 16px; text-transform: uppercase; padding-top: 66px; }
#main-call li a:hover { background-position: 0 -155px; color: #fff; }

#contribute { padding: 110px 0 70px 20px; max-width: 60em; margin-left: auto; margin-right: auto; }
#contribute:after { content: ""; display: table; clear: both; }
@media screen and (max-width: 960px) { #contribute { padding-top: 60px; padding-left: 0; } }
#contribute .column { float: left; display: block; margin-right: 2.12766%; width: 40.42553%; margin: 0 40px; }
#contribute .column:last-child { margin-right: 0; }
@media screen and (max-width: 960px) { #contribute .column { float: left; display: block; margin-right: 2.12766%; width: 100%; margin: 0; }
  #contribute .column:last-child { margin-right: 0; } }
#contribute p { line-height: 28px; font-size: 16px; }
#contribute h3 { font-weight: normal; border-bottom: 1px solid #ccc; color: #c53535; padding: 0 0 15px 0; margin: 0 0 30px 0; font-size: 16px; line-height: 23px; }
#contribute h3 strong { font-size: 16px; font-weight: bold; }
@media screen and (max-width: 960px) { #contribute h3 { margin: 30px 0 20px 0; } }
#contribute h5 { font-size: 14px; margin: 30px 0 10px 0; }
#contribute ul { margin-left: 40px; }
#contribute li { font-size: 14px; line-height: 22px; margin-top: 7px; list-style-type: disc; }
#contribute li:first-child { margin-top: 0; }

#badge { position: absolute; top: 15px; right: 0px; width: 150px; height: 150px; }

#badge-close { position: absolute; top: 7px; right: 0px; }

@media screen and (max-width: 1300px) { #badge { right: 0px; } }
@media screen and (max-width: 960px) { #badge { display: none; } }
#content-sidebar { float: left; display: block; margin-right: 2.12766%; width: 23.40426%; margin-bottom: 20px; }
#content-sidebar:last-child { margin-right: 0; }
#content-sidebar h4 { font-size: 16px; color: #999; cursor: pointer; margin-bottom: 10px; }
#content-sidebar h4:hover { opacity: .8; }
#content-sidebar h5 { font-size: 14px; color: #999; cursor: pointer; margin-bottom: 5px; }
#content-sidebar h5:hover { opacity: .8; }
#content-sidebar ul.first-nav { display: none; }
#content-sidebar ul { margin-bottom: 30px; }
#content-sidebar ul li { list-style-type: disc; margin-left: 30px; line-height: 20px; margin-top: 5px; }
#content-sidebar ul li ul { margin-bottom: 10px; display: none; }
#content-sidebar ul li ul li { margin-left: 20px; }
#content-sidebar ul li:first-child { margin-top: 0; }
#content-sidebar ul a { font-size: 14px; }
@media screen and (max-width: 960px) { #content-sidebar { display: none; } }

#entry { float: left; display: block; margin-right: 2.12766%; width: 74.46809%; padding: 0 0 50px 20px; float: right; }
#entry:last-child { margin-right: 0; }
#entry h2 { font-size: 20px; border-bottom: 1px solid #eee; padding-bottom: 10px; margin: 30px 0 20px 0; }
#entry p { line-height: 28px; font-size: 16px; }
@media screen and (max-width: 960px) { #entry { float: left; display: block; margin-right: 2.12766%; width: 100%; padding-left: 0; }
  #entry:last-child { margin-right: 0; } }

.error-entry h1 { margin: 70px 0 30px 0; }

.headline { border-bottom: 1px solid #eee; text-transform: uppercase; margin-top: 60px; padding-bottom: 20px; }

p iframe { width: 480px; height: 385px; padding: 10px; background: #fff; border: 1px solid #ddd; display: inline-block; margin-top: 20px; }
@media screen and (max-width: 686px) { p iframe { width: 100% !important; height: 300px; padding: 0; border: none; } }

p img { margin-top: 30px; }
@media screen and (max-width: 686px) { p img { width: 100%; } }

blockquote { background: #f8f8f8; padding: 30px; margin: 0 0 30px 0; }
blockquote h2 { margin: 0 0 20px 0 !important; }
blockquote ul { margin-left: 18px; }
blockquote li { font-size: 14px; line-height: 22px; margin-top: 7px; list-style-type: disc; }
blockquote h2 { font-size: 16px; margin: 0 0 15px 0; }

h1#scrum { background: url(/images/main_heading/scrum.gif) no-repeat right bottom; }

h1#xp { background: url(/images/main_heading/default.gif) no-repeat right bottom; }

h1#praticas { background: url(/images/main_heading/praticas.gif) no-repeat right bottom; }

h1#tdd { background: url(/images/main_heading/tdd.gif) no-repeat right bottom; }

h1#comunicacao { background: url(/images/main_heading/comunicacao.gif) no-repeat right bottom; }

h1#coragem { background: url(/images/main_heading/coragem.gif) no-repeat right bottom; }

h1#feedback { background: url(/images/main_heading/feedback.gif) no-repeat right bottom; }

h1#valores { background: url(/images/main_heading/valores.gif) no-repeat right bottom; }

h1#respeito { background: url(/images/main_heading/respeito.gif) no-repeat right bottom; }

h1#simplicidade { background: url(/images/main_heading/simplicidade.gif) no-repeat right bottom; }

h1#integracao_continua { background: url(/images/main_heading/integracao_continua.gif) no-repeat right bottom; }

h1#programacao_par { background: url(/images/main_heading/programacao_par.gif) no-repeat right bottom; }

h1#raiz_do_problema { background: url(/images/main_heading/raiz_do_problema.gif) no-repeat right bottom; }

h1#contrato_escopo_negociavel { background: url(/images/main_heading/contrato_escopo_negociavel.gif) no-repeat right bottom; }

h1#mock_objects { background: url(/images/main_heading/mock_objects.gif) no-repeat right bottom; }

h1#emma { background: url(/images/main_heading/emma.gif) no-repeat right bottom; }

h1#contrato_escopo_negociavel { background: url(/images/main_heading/contrato_escopo_negociavel.gif) no-repeat right bottom; }

h1#contrato_escopo_negociavel { background: url(/images/main_heading/contrato_escopo_negociavel.gif) no-repeat right bottom; }
