Created
September 29, 2014 20:58
-
-
Save JoshBarr/ba8ccb1a7ef0bba63d47 to your computer and use it in GitHub Desktop.
goodworld stylesheet
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* { | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; } | |
html { | |
background: #d0d3d6; } | |
body { | |
margin: 0; | |
font-family: "source sans pro", helvetica, sans-serif; | |
line-height: 1.5; | |
color: #333; | |
min-height: 100%; | |
position: relative; | |
background: #d0d3d6; } | |
/** | |
* ---------------------------------------------------------------------------- | |
* Typography | |
* ---------------------------------------------------------------------------- | |
*/ | |
h1 { | |
font-size: 48px; | |
font-size: 3rem; | |
font-weight: 300; | |
margin-top: 0; | |
margin-bottom: 1em; | |
line-height: 1.4; } | |
h2 { | |
font-size: 36px; | |
font-size: 2.25rem; | |
font-weight: 400; | |
margin-top: 0; | |
margin-bottom: 1em; | |
line-height: 1.35; } | |
h3 { | |
font-size: 24px; | |
font-size: 1.5rem; | |
font-weight: 400; | |
margin-top: 0; | |
margin-bottom: 0.5em; } | |
h4 { | |
margin-bottom: 0.5em; | |
font-weight: 600; | |
line-height: 1.4; } | |
h4, p, dl, table, ul, ol { | |
margin-top: 0; } | |
h5 { | |
margin-top: 0; | |
font-size: 16px; | |
font-size: 1rem; | |
margin-bottom: 0.5em; } | |
h6 { | |
margin-top: 0; | |
font-size: 14px; | |
font-size: 0.875rem; | |
margin-bottom: 1em; } | |
p { | |
margin-top: 0; | |
margin-bottom: 24px; | |
margin-bottom: 1.5rem; } | |
a { | |
text-decoration: none; | |
color: #014d8c; } | |
a:hover { | |
color: #0169bf; | |
border-color: #0285f1; } | |
@media only screen and (max-width: 37.4375em) { | |
h1 { | |
font-size: 2rem; } | |
h2 { | |
font-size: 1.75rem; } | |
h3 { | |
font-size: 1.25rem; } } | |
.note { | |
color: grey; } | |
.link-positive { | |
color: #56af1b; } | |
.link-positive:hover { | |
color: #408314; } | |
blockquote { | |
margin-left: 0; | |
padding-left: 1.5em; | |
border-left: solid 3px #eee; | |
font-size: 20px; | |
font-size: 1.25rem; | |
color: #888; } | |
cite { | |
font-size: 14px; | |
font-size: 0.875rem; | |
color: #666; } | |
cite:before { | |
content: "\2014\00a0"; | |
font-weight: 300; } | |
small { | |
color: #888; } | |
table { | |
table-layout: fixed; | |
padding: 0; | |
border-collapse: collapse; | |
margin-bottom: 1.5em; } | |
table thead { | |
font-weight: 600; } | |
table td { | |
border: solid 1px #ddd; | |
padding: 0.5em 1em; | |
vertical-align: top; } | |
.table--zebra tbody tr:nth-child(odd) { | |
background-color: #fafafa; } | |
.table--split { | |
text-align: right; | |
width: 100%; } | |
.table--split td { | |
width: 50%; | |
border-top: none; | |
border-left: none; | |
border-right: none; | |
vertical-align: top; | |
padding-left: 0; | |
padding-right: 0; } | |
.table--split tr > :first-child { | |
text-align: left; | |
font-weight: 600; } | |
.table--split tr:last-child > td { | |
border-bottom: none; } | |
/** | |
* List styles | |
* ---------------------------------------------------------------------------- | |
*/ | |
dl, ul, ol { | |
margin-top: 0; | |
margin-bottom: 1.5em; } | |
ul ul, ul ol, ol ul, ol ol { | |
margin-bottom: 0.5em; | |
padding-top: 0.5em; } | |
.section { | |
margin-bottom: 1em; } | |
/** | |
* Definition lists | |
*/ | |
dt { | |
font-weight: 600; } | |
dd { | |
margin-left: 0; | |
margin-bottom: 1em; } | |
.dl--inline dd, .dl--inline dt { | |
display: inline; | |
margin: 0; } | |
.dl--inline dt:after { | |
content: "\2014"; | |
margin-left: 0.25em; | |
color: #999; | |
font-weight: 300; } | |
.bare-list { | |
margin-bottom: 0; | |
list-style: none; } | |
/** | |
* Throws list items into a collection of inline-blocks | |
*/ | |
.nav { | |
/* ul, ol */ | |
margin-top: 0; | |
margin-bottom: 0; | |
list-style: none; | |
padding-left: 0; | |
font-size: medium; } | |
.nav > li { | |
display: inline-block; | |
vertical-align: middle; } | |
/** | |
* Extends `.nav {}` | |
* | |
* Adds spacing between a bunch of inline block nav children. | |
* | |
*/ | |
.nav--links > li { | |
margin-right: 0.75em; | |
line-height: 1; } | |
.nav--links > li:last-child { | |
margin-right: 0; } | |
.nav--links > .nav--links__tight { | |
margin-right: 0.25em; } | |
.nav--bullet li:after { | |
content: "•"; | |
margin-left: 0.55em; | |
color: #aaa; | |
display: inline-block; } | |
.nav--bullet li:last-child:after { | |
display: none; } | |
/** | |
* ---------------------------------------------------------------------------- | |
* Typography continued | |
* ---------------------------------------------------------------------------- | |
*/ | |
.default { | |
font-size: medium; } | |
.intro { | |
font-size: 20px; | |
font-size: 1.25rem; | |
line-height: 1.4; } | |
.para { | |
font-size: 18px; | |
font-size: 1.125rem; | |
margin-bottom: 1.5em; } | |
.small { | |
font-size: 14px; | |
font-size: 0.875rem; } | |
.font-light { | |
font-weight: 300; } | |
.font-light strong { | |
font-weight: 600; } | |
/** | |
* Ensure that leading/trailing rules can have their padding overridden | |
* by structural classes further down the stylesheet. | |
*/ | |
.leading-rule { | |
border-top: solid 1px rgba(0, 0, 0, 0.2); | |
padding-top: 1em; } | |
.trailing-rule { | |
padding-bottom: 1em; | |
border-bottom: solid 1px rgba(0, 0, 0, 0.2); } | |
/** | |
* ---------------------------------------------------------------------------- | |
* Main navigation | |
* ---------------------------------------------------------------------------- | |
*/ | |
.is-overlay .menu-wide { | |
z-index: 1; | |
position: relative; } | |
.menu { | |
display: none; | |
position: absolute; | |
width: 100%; | |
background: #1A3D72; | |
border-color: #1A3D72; | |
z-index: 5; | |
color: #fff; | |
padding-top: 1em; | |
padding-bottom: 1em; } | |
.menu li { | |
margin-bottom: 0.5em; | |
border-bottom: solid 1px rgba(0, 0, 0, 0.1); | |
padding-bottom: 0.5em; | |
text-align: center; } | |
.menu li:last-child { | |
border-bottom: none; | |
margin-bottom: 0; } | |
.menu a { | |
color: #fff; } | |
.menu:before { | |
content: ""; | |
position: absolute; | |
border: solid 0.35em transparent; | |
border-bottom-color: inherit; | |
width: 0; | |
bottom: 100%; | |
right: 1.25em; | |
-webkit-animation: slideUp 0.1s ease-out 0.1s backwards; | |
animation: slideUp 0.1s ease-out 0.1s backwards; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Buttons | |
* --------------------------------------------------------------------------- | |
* | |
* Can be applied to any element | |
* Will become an inline-block | |
* | |
* | |
* Combine with other modifiers for the styling, eg: | |
* | |
* <span class="btn btn-primary"></span> | |
* | |
* | |
* 1. Buttons shouldn't wordwrap. | |
* 2. Deal with styling for <button> element. | |
* | |
* | |
* Note: | |
* | |
* Applying button classes to an <input type="submit"> element can be | |
* unpredictable (especially in Firefox). Use a <button type="submit"></button> | |
* instead to avoid weird line-height issues. | |
* | |
*/ | |
.btn { | |
display: inline-block; | |
text-decoration: none; | |
font-family: inherit; | |
font-size: inherit; | |
line-height: 2.25; | |
white-space: nowrap; | |
/* [1] */ | |
-webkit-appearance: none; | |
/* [2] */ | |
-moz-appearance: none; | |
-ms-appearance: none; | |
-o-appearance: none; | |
appearance: none; | |
border: none; | |
padding-left: 1em; | |
padding-right: 1em; | |
border-radius: 0.25em; | |
padding-top: 0; | |
padding-bottom: 0; | |
margin: 0; } | |
.btn:hover { | |
color: inherit; | |
cursor: pointer; } | |
/** | |
* Button modifiers | |
* --------------------------------------------------------------------------- | |
*/ | |
.btn--small { | |
padding-left: 0.75em; | |
padding-right: 0.75em; | |
line-height: 2; | |
border-radius: 0.25em; } | |
.btn--inline { | |
line-height: 1.9; | |
padding-left: 1em; | |
padding-right: 1em; } | |
.btn--large { | |
line-height: 3; | |
padding-left: 2em; | |
padding-right: 2em; } | |
.btn--block { | |
display: block; | |
width: 100%; | |
text-align: center; } | |
.btn--circle { | |
line-height: 1.75; | |
padding-left: 0.75em; | |
padding-right: 0.75em; } | |
.btn-icon { | |
padding-left: 0.66667em; } | |
.btn-icon > .i { | |
margin-right: 0.33333em; } | |
.btn-icon:active > .i { | |
background-position: 0 25%; } | |
/** | |
* Button themes | |
* --------------------------------------------------------------------------- | |
*/ | |
.btn-primary, .btn-secondary, .btn-positive, .btn-negative { | |
border-style: solid; | |
border-width: 1px; } | |
.btn-primary { | |
background-color: #014d8c; | |
border-color: #014d8c; | |
color: #fff; } | |
.btn-primary:hover { | |
background-color: #013159; | |
border-color: #013159; | |
color: #fff; } | |
.btn-secondary { | |
background-color: #999; | |
color: #fff; } | |
.btn-secondary:hover { | |
background-color: #666; | |
border-color: #666; | |
color: #fff; } | |
.btn-tertiary { | |
border: solid 1px rgba(0, 0, 0, 0.25); | |
color: #666; } | |
.btn-tertiary:hover { | |
color: #333; | |
border-color: rgba(0, 0, 0, 0.4); } | |
.btn-remove { | |
color: #FA4C3D; } | |
.btn-remove:hover { | |
color: #f93224; } | |
.btn-outline { | |
border: solid 1px rgba(255, 255, 255, 0.5); | |
color: #fff; } | |
.btn-outline:hover { | |
color: #014d8c; | |
background: #fff; | |
border-color: #fff; } | |
.btn-positive { | |
background-color: #7CB655; | |
border-color: #7CB655; | |
color: #fff; } | |
.btn-positive:hover { | |
color: #fff; | |
background-color: #71a949; | |
border-color: #71a949; } | |
.btn-negative { | |
background-color: #FA4C3D; | |
border-color: #FA4C3D; | |
color: #fff; } | |
.btn-negative:hover { | |
color: #fff; | |
background-color: #f93224; | |
border-color: #f93224; } | |
/** | |
* Apply the active state to buttons last to ensure color is respected. | |
*/ | |
.btn:active { | |
background-color: #333; | |
color: #fff; | |
border-color: #333; } | |
/** | |
* Button Groups | |
* --------------------------------------------------------------------------- | |
*/ | |
@media only screen and (max-width: 37.4375em) { | |
.btn-group > .btn { | |
margin-bottom: 1em; } } | |
@media only screen and (min-width: 37.5em) { | |
.btn-group > .btn { | |
margin-right: 0.5em; } | |
.btn-group > .btn:last-child { | |
margin-right: 0; } } | |
.btn-group > :last-child { | |
margin-bottom: 0; } | |
.btn-group__divider { | |
margin-right: 0.35em; | |
display: inline-block; } | |
@media only screen and (max-width: 28.125em) { | |
.btn-group__divider { | |
display: block; | |
margin-bottom: 1em; | |
font-weight: 600; | |
text-transform: uppercase; } | |
.btn-group__divider:before, .btn-group__divider:after { | |
content: ""; | |
display: inline-block; | |
vertical-align: middle; | |
width: 3em; | |
height: 1px; | |
background: #C9DCEB; } | |
.btn-group__divider:before { | |
margin-right: 0.35em; } | |
.btn-group__divider:after { | |
margin-left: 0.35em; } } | |
/** | |
* --------------------------------------------------------------------------- | |
* Icons | |
* --------------------------------------------------------------------------- | |
*/ | |
.i { | |
display: inline-block; | |
width: 1em; | |
height: 1em; | |
background-size: cover; | |
vertical-align: middle; | |
margin-top: -0.125em; } | |
.i--small { | |
width: 0.875em; | |
height: 0.875em; } | |
.i--primary { | |
background-position: 0 12.5%; } | |
.menu .i--primary { | |
background-position: 0 37.5%; } | |
.i--light { | |
background-position: 0 37.5%; } | |
.i--white { | |
background-position: 0 25%; } | |
.i--positive { | |
background-position: 0 75%; } | |
.i--lightgreen { | |
background-position: 0 87.5%; } | |
.i--grey { | |
background-position: 0 50%; } | |
.logo { | |
padding-top: 1.25em; | |
padding-bottom: 1.25em; } | |
.logo__mark { | |
font-size: 1.125em; | |
width: 10.25em; | |
height: 2.625em; } | |
@media only screen and (max-width: 37.4375em) { | |
.logo--responsive { | |
font-size: 1em; } } | |
/** | |
* --------------------------------------------------------------------------- | |
* Page components | |
* --------------------------------------------------------------------------- | |
*/ | |
.gw-user { | |
margin-right: 0.35em; } | |
/** | |
* Extends `.nav {}` | |
* | |
* Tabbing is achieved through a selected/deselected bottom border. Add/remove here. | |
*/ | |
.tabs { | |
padding-bottom: 0.5em; } | |
.tab { | |
padding-bottom: 0.25em; | |
color: #888; | |
border-bottom: solid 2px #eee; } | |
.tab--active { | |
color: #222; | |
border-bottom-color: #aaa; } | |
/** | |
* Avatars | |
* --------------------------------------------------------------------------- | |
*/ | |
.circle, .avatar, .btn--circle { | |
border-radius: 50em; | |
display: inline-block; | |
overflow: hidden; } | |
.circle { | |
width: 100%; | |
padding-bottom: 100%; | |
height: 0; } | |
.avatar { | |
background-color: #ddd; | |
min-width: 2em; | |
min-height: 2em; } | |
.avatar > img { | |
display: block; | |
width: 100%; } | |
.team { | |
display: inline-block; | |
margin-right: 1em; | |
margin-bottom: 0.5em; } | |
.team img { | |
-webkit-transition: -webkit-transform linear 0.1s; | |
transition: transform linear 0.1s; | |
-webkit-backface-visibility: hidden; | |
-webkit-transform: scale(1); | |
-ms-transform: scale(1); | |
transform: scale(1); } | |
.team:hover img { | |
-webkit-transform: scale(1.03); | |
-ms-transform: scale(1.03); | |
transform: scale(1.03); } | |
.team__image, .team__name { | |
text-align: left; | |
display: inline-block; | |
vertical-align: middle; } | |
.team__image { | |
width: 4em; | |
height: 4em; | |
margin-right: 0.75em; | |
overflow: hidden; | |
-webkit-transform: scale(1); | |
-ms-transform: scale(1); | |
transform: scale(1); } | |
.team__role { | |
color: #888; } | |
/** | |
* Media blocks | |
* --------------------------------------------------------------------------- | |
*/ | |
.media { | |
overflow: hidden; | |
margin-bottom: 32px; | |
margin-bottom: 2rem; } | |
.media--squishy img { | |
width: 100%; } | |
.media__image { | |
float: left; | |
margin-right: 2em; } | |
.media__image > img { | |
display: block; } | |
/** | |
* Inset panels/cards | |
* --------------------------------------------------------------------------- | |
*/ | |
.card { | |
border-radius: 0.25em; | |
padding-top: 1.25em; | |
padding-bottom: 1.25em; | |
margin-bottom: 2em; | |
border: solid 1px #e2e2e2; | |
background: #fff; | |
box-shadow: 0 1px 5px rgba(10, 15, 37, 0.05); | |
padding-left: 1em; | |
padding-right: 1em; } | |
@media only screen and (min-width: 37.5em) { | |
.card { | |
padding-left: 2em; | |
padding-right: 2em; } } | |
.card > :last-child { | |
margin-bottom: 0; } | |
/** | |
* Mobile menu icon, with transition | |
* --------------------------------------------------------------------------- | |
*/ | |
@media only screen and (max-width: 37.4375em) { | |
.menu-logo { | |
width: 5em; } } | |
.menu-icon { | |
display: inline-block; | |
position: relative; | |
width: 1em; | |
height: 0.875em; | |
margin-left: 0.25em; | |
vertical-align: middle; } | |
.menu-icon:before, .menu-icon:after { | |
content: ""; | |
-webkit-transform: rotate(0); | |
-ms-transform: rotate(0); | |
transform: rotate(0); | |
-webkit-transition: -webkit-transform 0.2s ease-out, width 0.2s ease-out; | |
transition: transform 0.2s ease-out, width 0.2s ease-out; } | |
.menu-icon:before, .menu-icon:after, .menu-icon .menu-icon__middle { | |
display: block; | |
position: absolute; | |
height: 2px; | |
width: 100%; | |
background: #014d8c; } | |
.menu-icon:before { | |
top: 0; | |
-webkit-transform-origin: 0% 50%; | |
-ms-transform-origin: 0% 50%; | |
transform-origin: 0% 50%; } | |
.menu-icon:after { | |
bottom: 0; | |
-webkit-transform-origin: 0% 50%; | |
-ms-transform-origin: 0% 50%; | |
transform-origin: 0% 50%; } | |
.menu-icon .menu-icon__middle { | |
top: 50%; | |
margin-top: -1px; | |
-webkit-transition: opacity 0.2s; | |
transition: opacity 0.2s; } | |
.menu-icon--active:before, .menu-icon--active:after, .menu-icon:active:before, .menu-icon:active:after { | |
width: 104%; } | |
.menu-icon--active:before, .menu-icon:active:before { | |
-webkit-transform: rotate(45deg); | |
-ms-transform: rotate(45deg); | |
transform: rotate(45deg); } | |
.menu-icon--active:after, .menu-icon:active:after { | |
-webkit-transform: rotate(-45deg); | |
-ms-transform: rotate(-45deg); | |
transform: rotate(-45deg); } | |
.menu-icon--active .menu-icon__middle, .menu-icon:active .menu-icon__middle { | |
opacity: 0; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Forms | |
* --------------------------------------------------------------------------- | |
*/ | |
fieldset { | |
border: none; | |
padding: 0; | |
margin: 0; } | |
.field { | |
border: solid 1px #ddd; | |
padding: 0.5em 0.5em; | |
font-size: inherit; | |
appearance: none; | |
width: 100%; | |
background: #eee; | |
border-radius: 0.125em; } | |
.field--text, textarea { | |
font-family: inherit; } | |
.field:focus { | |
outline: none; | |
border-color: #014d8c; | |
box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); } | |
.field--select { | |
width: 100%; } | |
.label { | |
margin-bottom: 1em; | |
display: inline-block; | |
width: 100%; } | |
/* Hack attack, sorry! */ | |
.cc-logos { | |
margin-top: 0.5em; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Structure | |
* --------------------------------------------------------------------------- | |
*/ | |
.wrapper { | |
max-width: 1200px; | |
max-width: 75rem; | |
margin-left: auto; | |
margin-right: auto; } | |
@media only screen and (min-width: 57em) { | |
.tasty-whitespace { | |
padding-left: 5%; | |
padding-right: 5%; } } | |
.nugget { | |
max-width: 25em; } | |
.prose { | |
max-width: 36em; } | |
.snack { | |
max-width: 45em; } | |
.column { | |
padding-left: 1em; | |
padding-right: 1em; | |
text-align: left; } | |
.column .grid { | |
margin-left: -1rem; | |
margin-right: -1rem; } | |
/** | |
* Grid | |
* --------------------------------------------------------------------------- | |
*/ | |
.grid { | |
font-size: 0; | |
text-align: justify; } | |
.grid:after { | |
width: 100%; | |
display: inline-block; | |
content: ""; } | |
.grid > * { | |
font-size: medium; | |
display: inline-block; | |
vertical-align: top; } | |
/** | |
* Block context | |
* --------------------------------------------------------------------------- | |
*/ | |
/* Avoid double margin */ | |
.block > :last-child, .block--tight > :last-child, .space--small > :last-child, .block--deep > :last-child { | |
margin-bottom: 0; } | |
.block { | |
padding-top: 2em; | |
padding-bottom: 2em; } | |
.block--tight { | |
padding: 1em; } | |
.space--small { | |
padding-top: 1em; | |
padding-bottom: 1em; } | |
.block--deep { | |
padding-top: 3em; } | |
.block--top { | |
padding-top: 6%; | |
padding-bottom: 0; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Brand colours | |
* --------------------------------------------------------------------------- | |
*/ | |
.brand { | |
color: #014d8c; } | |
.brand-alt { | |
color: #00a1ff; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Themes | |
* --------------------------------------------------------------------------- | |
*/ | |
.theme-primary, .theme-night { | |
-webkit-font-smoothing: antialiased; } | |
.theme-primary { | |
background-color: #014d8c; | |
color: #fff; } | |
.theme-primary .link { | |
color: #fff; | |
border-bottom: solid 1px rgba(255, 255, 255, 0.2); } | |
.theme-primary .link:hover { | |
border-bottom-color: rgba(255, 255, 255, 0.5); } | |
.theme-night { | |
background-color: #222; | |
color: #fff; } | |
.theme-night a { | |
color: #fff; } | |
.theme-night .leading-rule, .theme-night .trailing-rule { | |
border-color: rgba(255, 255, 255, 0.2); } | |
.theme-night .btn-outline:hover { | |
color: #222; } | |
.theme-light { | |
background-color: #ddd; } | |
.theme-xlight { | |
background-color: #F2F6F8; } | |
.theme-ui { | |
background-color: #586268; } | |
.theme-white { | |
background-color: #fff; } | |
.theme-light-brand { | |
background-color: #dceaf0; | |
color: #014781; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Homepage - intro | |
* --------------------------------------------------------------------------- | |
*/ | |
@-webkit-keyframes tweetIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: scale(0); | |
transform: scale(0); } | |
50% { | |
-webkit-transform: scale(1.1); | |
transform: scale(1.1); } | |
100% { | |
opacity: 1; | |
-webkit-transform: scale(1); | |
transform: scale(1); } } | |
@keyframes tweetIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: scale(0); | |
transform: scale(0); } | |
50% { | |
-webkit-transform: scale(1.1); | |
transform: scale(1.1); } | |
100% { | |
opacity: 1; | |
-webkit-transform: scale(1); | |
transform: scale(1); } } | |
@-webkit-keyframes avatarIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: translateY(100%); | |
transform: translateY(100%); } | |
50% { | |
-webkit-transform: translateY(-10%); | |
transform: translateY(-10%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
@keyframes avatarIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: translateY(100%); | |
transform: translateY(100%); } | |
50% { | |
-webkit-transform: translateY(-10%); | |
transform: translateY(-10%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
.gw-intro { | |
max-width: 37em; | |
margin-left: auto; | |
margin-right: auto; | |
margin-top: 7%; | |
border-top-left-radius: 0.5em; | |
border-top-right-radius: 0.5em; | |
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25); | |
position: relative; | |
overflow: hidden; | |
padding-top: 3em; | |
padding-bottom: 1em; | |
text-align: left; } | |
.gw-intro:before { | |
position: absolute; | |
display: block; | |
width: 100%; | |
text-align: left; | |
color: #fff; | |
padding-left: 0.5em; | |
content: "• • •"; | |
line-height: 1; | |
font-size: 2em; | |
background: #4d555b; | |
top: 0; } | |
.gw-intro__block { | |
padding-left: 10%; | |
padding-right: 10%; } | |
@media only screen and (min-width: 30.0625em) { | |
.gw-intro__flip { | |
direction: rtl; } | |
.gw-intro__flip > * { | |
direction: ltr; } } | |
.gw-intro__avatar { | |
-webkit-animation: avatarIn 0.2s ease-out backwards; | |
animation: avatarIn 0.2s ease-out backwards; | |
color: #fff; | |
vertical-align: top; | |
display: inline-block; } | |
.gw-intro__avatar > .i { | |
width: 3em; | |
height: 3em; | |
margin-top: 0; } | |
.gw-intro__avatar > span { | |
font-size: 0.75em; | |
line-height: 1; | |
display: inline-block; } | |
@media only screen and (min-width: 30.0625em) { | |
.gw-intro__avatar { | |
width: 6em; } | |
.gw-intro__avatar > span { | |
width: 100%; } } | |
.gw-intro__tweet { | |
font-size: 1.0625em; | |
vertical-align: top; | |
background: #ccc; | |
display: inline-block; | |
border-radius: 0.125em; | |
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2); | |
padding: 0.75em; | |
position: relative; | |
-webkit-animation: tweetIn 0.2s ease-out backwards; | |
animation: tweetIn 0.2s ease-out backwards; } | |
.gw-intro__tweet > .i { | |
position: absolute; | |
right: 100%; | |
top: 50%; | |
display: none; } | |
@media only screen and (min-width: 30.0625em) { | |
.gw-intro__tweet > .i { | |
display: block; } } | |
.gw-intro__1 { | |
-webkit-animation-delay: 800ms; | |
animation-delay: 800ms; } | |
.gw-intro__1 > .i { | |
background-color: #c7be6c; } | |
.gw-intro__2 { | |
-webkit-animation-delay: 1200ms; | |
animation-delay: 1200ms; } | |
.gw-intro__2 > .i { | |
background-color: #65a5c6; } | |
@media only screen and (max-width: 30em) { | |
.gw-intro__2 { | |
direction: rtl; } } | |
.gw-intro__3 { | |
-webkit-animation-delay: 1800ms; | |
animation-delay: 1800ms; } | |
.gw-intro__3 > .i { | |
background-color: #8fc26d; } | |
.gw-intro__tweet-1 { | |
-webkit-animation-delay: 900ms; | |
animation-delay: 900ms; | |
background-color: #f5eea8; } | |
.gw-intro__tweet-2 { | |
-webkit-animation-delay: 1300ms; | |
animation-delay: 1300ms; | |
background-color: #acdef3; } | |
.gw-intro__tweet-2 > .i { | |
right: auto; | |
left: 100%; } | |
.gw-intro__tweet-3 { | |
-webkit-animation-delay: 1900ms; | |
animation-delay: 1900ms; | |
background-color: #d6f2c3; } | |
@-webkit-keyframes fadeIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: translateY(-10%); | |
transform: translateY(-10%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
@keyframes fadeIn { | |
0% { | |
opacity: 0; | |
-webkit-transform: translateY(-10%); | |
transform: translateY(-10%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
@media only screen and (max-width: 37.4375em) { | |
.gw-np-promo { | |
display: none; } } | |
.gw-this-or-that__or { | |
display: inline-block; | |
font-size: 1em; | |
font-weight: 600; } | |
.gw-this-or-that__or:before, .gw-this-or-that__or:after { | |
content: ""; | |
display: inline-block; | |
position: relative; | |
width: 4em; | |
height: 1px; | |
background: #C5CFE6; | |
top: 50%; | |
vertical-align: middle; } | |
.gw-this-or-that__or:after { | |
margin-left: 0.35em; } | |
.gw-this-or-that__or:before { | |
margin-right: 0.35em; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Utilities | |
* --------------------------------------------------------------------------- | |
*/ | |
.u-center { | |
text-align: center; } | |
.u-middle > * { | |
vertical-align: middle; } | |
.u-strong { | |
font-weight: 600; } | |
.u-auto { | |
margin-left: auto; | |
margin-right: auto; } | |
.u-hide { | |
display: none; } | |
.u-right { | |
text-align: right; } | |
.u-overflow { | |
overflow: hidden; } | |
.u-tight { | |
margin-bottom: 0.25em; } | |
/** | |
* 1. Ensures text doesn't wrap and break your layout | |
* 2. Trigger overflow behavior | |
* 3. Truncate the text | |
*/ | |
.u-truncate { | |
white-space: nowrap; | |
/* [1] */ | |
overflow: hidden; | |
/* [2] */ | |
text-overflow: ellipsis; | |
/* [3] */ } | |
@media only screen and (max-width: 37.4375em) { | |
.u-hide-small { | |
display: none; } | |
.u-center-small { | |
text-align: center; } } | |
@media only screen and (max-width: 43.125em) { | |
/** | |
* Oh yeah, that thing where you can join a class to itself to | |
* increase specificity by 1? Sweeeet. | |
*/ | |
.u-hide-nav { | |
display: none; } | |
.menu--active .menu { | |
display: block; } } | |
@media only screen and (min-width: 43.1875em) { | |
.u-show-nav { | |
display: none; } } | |
@media only screen and (min-width: 37.5em) { | |
.u-auto-medium { | |
margin-left: auto; | |
margin-right: auto; } | |
.u-hide-medium { | |
display: none; } | |
.u-center-medium { | |
text-align: center; } } | |
@media only screen and (min-width: 57em) { | |
.u-auto-large { | |
margin-left: auto; | |
margin-right: auto; } | |
.u-hide-large { | |
display: none; } | |
.u-center-large { | |
text-align: center; } } | |
/** | |
* --------------------------------------------------------------------------- | |
* Widths | |
* --------------------------------------------------------------------------- | |
* | |
* Can be applied to anything. | |
* Widths, like states and utilities, should come near the end of the | |
* stylesheet to ensure they are obeyed. | |
* | |
* Try not to apply widths with a specificity of > 1. Don't do this: | |
* | |
* .something > li { width: 100% } | |
* | |
* If you *do* need to set a width, try BEMing it to keep specificity down: | |
* | |
* .something__item { width: 100% } | |
* | |
*/ | |
.one-tenth { | |
width: 10%; } | |
.one-quarter { | |
width: 25%; } | |
.one-fifth { | |
width: 20%; } | |
.one-third { | |
width: 33.33333%; } | |
.three-tenths { | |
width: 30%; } | |
.two-fifths { | |
width: 40%; } | |
.one-half { | |
width: 50%; } | |
.three-fifths { | |
width: 60%; } | |
.two-thirds { | |
width: 66.66667%; } | |
.seven-tenths { | |
width: 70%; } | |
.three-quarters { | |
width: 75%; } | |
.four-fifths { | |
width: 80%; } | |
.nine-tenths { | |
width: 90%; } | |
.full { | |
width: 100%; } | |
@media only screen and (min-width: 25em) { | |
.small-one-tenth { | |
width: 10%; } | |
.small-one-quarter { | |
width: 25%; } | |
.small-one-fifth { | |
width: 20%; } | |
.small-one-third { | |
width: 33.33333%; } | |
.small-three-tenths { | |
width: 30%; } | |
.small-two-fifths { | |
width: 40%; } | |
.small-one-half { | |
width: 50%; } | |
.small-three-fifths { | |
width: 60%; } | |
.small-two-thirds { | |
width: 66.66667%; } | |
.small-seven-tenths { | |
width: 70%; } | |
.small-three-quarters { | |
width: 75%; } | |
.small-four-fifths { | |
width: 80%; } | |
.small-nine-tenths { | |
width: 90%; } | |
.small-full { | |
width: 100%; } } | |
@media only screen and (min-width: 37.5em) { | |
.medium-one-tenth { | |
width: 10%; } | |
.medium-one-quarter { | |
width: 25%; } | |
.medium-one-fifth { | |
width: 20%; } | |
.medium-one-third { | |
width: 33.33333%; } | |
.medium-three-tenths { | |
width: 30%; } | |
.medium-two-fifths { | |
width: 40%; } | |
.medium-one-half { | |
width: 50%; } | |
.medium-three-fifths { | |
width: 60%; } | |
.medium-two-thirds { | |
width: 66.66667%; } | |
.medium-seven-tenths { | |
width: 70%; } | |
.medium-three-quarters { | |
width: 75%; } | |
.medium-four-fifths { | |
width: 80%; } | |
.medium-nine-tenths { | |
width: 90%; } | |
.medium-full { | |
width: 100%; } } | |
@media only screen and (min-width: 57em) { | |
.large-one-tenth { | |
width: 10%; } | |
.large-one-quarter { | |
width: 25%; } | |
.large-one-fifth { | |
width: 20%; } | |
.large-one-third { | |
width: 33.33333%; } | |
.large-three-tenths { | |
width: 30%; } | |
.large-two-fifths { | |
width: 40%; } | |
.large-one-half { | |
width: 50%; } | |
.large-three-fifths { | |
width: 60%; } | |
.large-two-thirds { | |
width: 66.66667%; } | |
.large-seven-tenths { | |
width: 70%; } | |
.large-three-quarters { | |
width: 75%; } | |
.large-four-fifths { | |
width: 80%; } | |
.large-nine-tenths { | |
width: 90%; } | |
.large-full { | |
width: 100%; } } | |
@media only screen and (min-width: 68.75em) { | |
.xlarge-one-tenth { | |
width: 10%; } | |
.xlarge-one-quarter { | |
width: 25%; } | |
.xlarge-one-fifth { | |
width: 20%; } | |
.xlarge-one-third { | |
width: 33.33333%; } | |
.xlarge-three-tenths { | |
width: 30%; } | |
.xlarge-two-fifths { | |
width: 40%; } | |
.xlarge-one-half { | |
width: 50%; } | |
.xlarge-three-fifths { | |
width: 60%; } | |
.xlarge-two-thirds { | |
width: 66.66667%; } | |
.xlarge-seven-tenths { | |
width: 70%; } | |
.xlarge-three-quarters { | |
width: 75%; } | |
.xlarge-four-fifths { | |
width: 80%; } | |
.xlarge-nine-tenths { | |
width: 90%; } | |
.xlarge-full { | |
width: 100%; } } | |
/** | |
* --------------------------------------------------------------------------- | |
* Animation | |
* --------------------------------------------------------------------------- | |
*/ | |
@keyframes fadeIn { | |
0% { | |
opacity: 0; } | |
100% { | |
opacity: 1; } } | |
@-webkit-keyframes navIn { | |
0% { | |
opacity: 0; } | |
100% { | |
opacity: 1; } } | |
@keyframes navIn { | |
0% { | |
opacity: 0; } | |
100% { | |
opacity: 1; } } | |
@-webkit-keyframes slideUp { | |
0% { | |
-webkit-transform: translateY(15%); | |
transform: translateY(15%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
@keyframes slideUp { | |
0% { | |
-webkit-transform: translateY(15%); | |
transform: translateY(15%); } | |
100% { | |
opacity: 1; | |
-webkit-transform: translateY(0%); | |
transform: translateY(0%); } } | |
.anim-nav { | |
-webkit-animation: navIn 0.1s ease-out backwards; | |
animation: navIn 0.1s ease-out backwards; } | |
.anim-fadein { | |
-webkit-animation: fadeIn 0.1s ease-out backwards; | |
animation: fadeIn 0.1s ease-out backwards; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Sequencing | |
* --------------------------------------------------------------------------- | |
* | |
* | |
*/ | |
.sequence-1 { | |
-webkit-animation-delay: 100ms; | |
animation-delay: 100ms; } | |
.sequence-2 { | |
-webkit-animation-delay: 200ms; | |
animation-delay: 200ms; } | |
.sequence-3 { | |
-webkit-animation-delay: 300ms; | |
animation-delay: 300ms; } | |
.sequence-4 { | |
-webkit-animation-delay: 400ms; | |
animation-delay: 400ms; } | |
.sequence-5 { | |
-webkit-animation-delay: 500ms; | |
animation-delay: 500ms; } | |
.sequence-6 { | |
-webkit-animation-delay: 600ms; | |
animation-delay: 600ms; } | |
/** | |
* --------------------------------------------------------------------------- | |
* Success/fail messages | |
* --------------------------------------------------------------------------- | |
* * | |
*/ | |
.message { | |
font-weight: 600; } | |
.message--success { | |
background: #d6f2c3; | |
border-color: #C3E4AD; } | |
.message--error { | |
background: #f5eea8; | |
border-color: #f5eea8; } | |
.message--info { | |
background: #acdef3; | |
border-color: #acdef3; } | |
.form__error { | |
font-weight: 600; } | |
/** | |
* --------------------------------------------------------------------------- | |
* States | |
* --------------------------------------------------------------------------- | |
* | |
* Apply states last. | |
* | |
*/ | |
/** | |
* Prevent all user interaction with the element | |
*/ | |
.is-disabled { | |
pointer-events: none; | |
cursor: default; | |
opacity: 0.5; } | |
/** | |
* Shows errors, especially in forms. | |
* | |
* 1. Assume error class can be applied to an input, containing div or label. | |
* 2. Give links inside an errored component a clickable appearance. | |
* 3. Reset form field border-color on focus. | |
*/ | |
.is-error { | |
color: #FA4C3D; | |
border-color: #FA4C3D; | |
/* [1] */ } | |
.is-error a { | |
color: #FA4C3D; | |
text-decoration: underline; | |
/* [2] */ } | |
.is-error .field { | |
border-color: #FA4C3D; } | |
.is-error .field:focus { | |
border-color: #014d8c; | |
/* [3] */ } | |
.is-field-error { | |
color: #FA4C3D; | |
margin-bottom: 0.25em; } | |
.is-warning { | |
color: #FA4C3D; } | |
.is-hidden { | |
display: none; } | |
.is-overlay:after { | |
content: ""; | |
position: absolute; | |
top: 0; | |
bottom: 0; | |
left: 0; | |
right: 0; | |
background: rgba(255, 255, 255, 0.85); | |
-webkit-animation: fadeIn 0.1s ease-out backwards; | |
animation: fadeIn 0.1s ease-out backwards; } | |
/*# sourceMappingURL=good.css.map */ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment