/* ========================================================================== Page layout ========================================================================== */ /* Masthead ========================================================================== */ #masthead { padding: $gutter; z-index: 5; @include transform(translate(0,0)); @include transition(500ms cubic-bezier(.645,.045,.355,1.000)); &.slide { @include transform(translate(-1600px,0)); } .inner-wrap { @include outer-container; } } .site-title { @include row; @include media($large) { @include span-columns(4); } padding: (.25 * $masthead-height) 0; // fourth the height to center vertically height: $masthead-height; text-decoration: none; color: $black; font-family: $alt-font; font-weight: 700; @include font-size(20,no); line-height: .5 * $masthead-height; // half the height to center vertically text-transform: uppercase; } /* Menus ========================================================================== */ .menu { li { float: left; &:last-child a { @include media($medium) { margin-right: 0; // remove spacing from last menu link } } a { // line hover effect position: relative; display: block; margin-right: $gutter; padding: (.25 * $masthead-height) 0 (.25 * $masthead-height) ; height: $masthead-height; font-family: $alt-font; &:before, &:after { content: ''; display: block; position: absolute; top: 0; left: 0; height: 2px; @include transition(width 0.3s); } &:before { width: 100%; background: transparent; } &:after { width: 0; background: $black; } &:active:after, &:hover:after { width: 100%; } } } } /* Top menu navigation */ .top-menu { display: none; position: relative; @include media($medium) { @include span-columns(12); } @include media($large) { @include span-columns(7); ul { position: absolute; right: 0; } } .home, .sub-menu-item { display: none; } li { a { font-weight: 700; @include font-size(16,no); line-height: .5 * $masthead-height; // half the height to center vertically color: $black; text-transform: uppercase; } } } /* Bottom menu navigation */ .bottom-menu { @include clearfix; font-weight: 700; a { color: lighten($black,60); } } /* Page wrapper ========================================================================== */ #page-wrapper { padding: 0 $gutter; // add white space for smaller screens @include size(100% 100%); -webkit-overflow-scrolling: touch; z-index: 2; @include transform(translate(0,0)); @include transition(500ms cubic-bezier(.645,.045,.355,1.000)); &.slide { @include transform(translate(-60rem,0)); } } /* Main content ========================================================================== */ #main { .inner-wrap { @include media($medium) { @include span-columns(9); } } .page-title { @include fill-parent; } @at-root { .page-content { @include fill-parent; // larger font for intro paragraph > p { &:first-child { @include font-size(20,yes,30); } } // cleaner underlines for links a { text-decoration: none; } p a, li a { border-bottom: 1px dotted lighten($link-color, 50); &:hover { border-bottom-style: solid; } } p > a.reversefootnote { border-bottom-width: 0; } .toc li > a { border-bottom-width: 0; } .page-footer, .pagination { @include fill-parent; } .page-meta { p{ @include font-size(14,no); font-family: $alt-font; color: lighten($black,60); } } } } @at-root { .archive-wrap { @include fill-parent; .page-content { @include reset-all; @include fill-parent; } } } /* advertisements */ .ads { position: relative; text-align: center; margin-top: $gutter; margin-left: -$gutter; margin-right: -$gutter; padding: 10px 0 20px; background: lighten($border-color,5); @include media($medium) { @include span-columns(3); margin-left: 0; margin-right: 0; } &:after { content: 'Advertisement'; position: absolute; bottom: 0; width: 100%; text-align: center; display: block; @include font-size(9,no); font-family: $alt-font; } ins { border-width: 0; } } } // page lead .page-lead { background-position: center top; background-repeat: no-repeat; background-attachment: fixed; text-align: center; color: $white; @include media($large) { background-size: cover; } } .page-lead-content { padding: 1em; @include media($medium) { padding: 2em; } @include media($large) { padding: 3em; } h1 { @include font-size(48); @include media($medium) { @include font-size(60); } @include media($large) { @include font-size(72); } } h2 { @include font-size(20); @include media($medium) { @include font-size(24); } @include media($large) { @include font-size(32); } } } // page header .page-feature { @include fill-parent; // expand image to cover full width of header img { width: 100%; } } // make image flush with edges on small screens .page-image { position: relative; margin-left: -1 * $gutter; margin-right: -1 * $gutter; // feature image caption .image-credit { position: absolute; bottom: 0; right: 0; margin: 0 auto; padding: 10px 15px; background-color: rgba($black,.5); color: $white; font-family: $alt-font; @include font-size(12,no); text-align: right; z-index: 10; a { color: $white; text-decoration: none; } } } /* Page footer ========================================================================== */ .page-footer { position: relative; } /* Author block */ .author-image { position: absolute; left: 0; img { width: 80px; height: 80px; border-radius: $border-radius; } } .author-content { word-wrap: break-word; padding-left: 100px; //avatar width + 20px padding min-height: 80px; //mirrors avatar height } .author-name { @include font-size(20,no); } .author-bio { margin-top: 0; @include font-size(16); } /* Site footer ========================================================================== */ #site-footer { @include outer-container; margin-top: (3 * (0px + $doc-line-height)); margin-top: (3 * (0rem + ($doc-line-height / $doc-font-size))); padding-bottom: $gutter; font-family: $alt-font; /* Copyright text */ .copyright { @include font-size(12); color: lighten($black,60); a { color: lighten($black,60); text-decoration: none; } } }